测试

思路

首先分析题目,包含了数字字母,和非数字字母等。
为了减少计算量,将所有字符转为小写,则统一计算量。

注意

在循环的时候注意先使用再把循环的变量增加,否则容易漏掉某个字符的比较

#include<string.h>

int main(void)
{
    char str[1000]={0};
    char ch={0};
    int num=0;
    int i=0;
    
    gets(&str);//得到所有字符串
    ch = getchar();//得到一个字符
    
    while(str[i] != '\0'){
        if(tolower(str[i]) == tolower(ch)){
            num++;
        }//if
        i++;//此处计算完再累加,否则容易在下一个漏掉
    }//while
    printf("%d",num);
}