怎么用c语言统计一个字符串中出现最多的字母,并输出这个字符出现的次数
1个回答
关注
展开全部
构建一个循环,从头到尾扫描字符串,比如abcabcd,首先判断所扫描的字符是否出现过,若没出现过,构建一个变量,初始值为一(变量与字母一一对应,变量的值即为该字符出现的次数);若出现过,使其所对应的变量加一。循环结束以后,比较这几个变量的大小,可以用冒泡法或快排,将最大值输出。具体程序并不复杂,相信楼主可以完成,楼下那个开数组的方法比较浪费内存,不建议使用。
咨询记录 · 回答于2021-03-20
怎么用c语言统计一个字符串中出现最多的字母,并输出这个字符出现的次数
构建一个循环,从头到尾扫描字符串,比如abcabcd,首先判断所扫描的字符是否出现过,若没出现过,构建一个变量,初始值为一(变量与字母一一对应,变量的值即为该字符出现的次数);若出现过,使其所对应的变量加一。循环结束以后,比较这几个变量的大小,可以用冒泡法或快排,将最大值输出。具体程序并不复杂,相信楼主可以完成,楼下那个开数组的方法比较浪费内存,不建议使用。
#includeintmain(void){charch;inta=0,b=0,c=0,d=0;while((ch=getchar())!='\n'){if(ch>='a'&&ch='a'&&ch<='z')a++;elseif(ch>='0'&&ch<='9')b++;elseif(ch=='')c++;elsed++;}printf("字母=%d\n数字=%d\n空格=%d\n其他字符=%d\n",a,b,c,d);return0;}