原题
题目描述: 写一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输入字符串中该字符出现的次数(不区分大小写字母);数据范围(1≤n≤1000)
输入描述:第一行输入一个由字母和数字组成的字符串,第二行输入一个字母
输出描述:输出输入字符串中含有该字符的个数(不区分大小写字母)
示例1:
输入:
ABCabc
A
A
输出:
2
思路
1、将字符串以及输入字符中的所有大写字母转换成小写字母;
2、使用int型变量count记录字符出现的次数,遍历字符串,如果某个字符与目标字符相同,则count自增。
注意点
1、题目中标注了数据范围小于等于1000(应该就是让我们创建一个1000的字符型数组内存区域吧)所以设置了字符数组的长度为1000;
#include<stdio.h> #include<string.h> const int max1=1000; int main(){ int count=0,i; char str[max1],target;//target用来存放待查找的目标字符 gets(str); target=getchar(); if(target>='A' && target<='Z')target=target-'A'+'a'; for(i=0;i<strlen(str);i++){ if(str[i]>='A' && str[i]<='Z')str[i]=str[i]-'A'+'a'; if(str[i]==target)count++; } printf("%d",count); return 0; }