华为在线笔试题 接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

mac2024-01-26  44

写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。

输入描述: 第一行输入一个有字母和数字以及空格组成的字符串,第二行输入一个字符。

输出描述: 输出输入字符串中含有该字符的个数。

示例1 输入

ABCDEF A 输出

1 解题思路:获取输入的字符串,遍历第一个字符串看是否有输入的字符,注意题目要求不区分大小写。

#include <stdio.h> #include <string.h> int main() { char arr[5000];//测试程序的输入会很大,所以将数组设置的大一点 char brr; int a = 0,b = 0; fgets(arr,5000,stdin);//从标准输入获取第一串字符 brr = getchar();//获取第二个字符,getchar函数只能获取一个字符 while(a != strlen(arr)-1)//strlen记得减一 { if(arr[a] == brr || arr[a]-brr == 32 || arr[a]+32 == brr)//不区分大小写 { b++; } a++; } printf("%d\r\n",b); return 0; }

做C语言的字符串题还需细心,代码若可优化,请指正,辛苦谢谢!!

最新回复(0)