|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include<stdio.h>
- #include<string.h>
- int main()
- {
- char ch[100],ch1[100],ch2;
- int count,i,j,a=0,b=0;
- int flag = 0;
-
- printf("请输入英文文本:");
- scanf("%s",&ch);
-
- count = strlen(ch);//获取输入字符个数
-
- for(i = 0;i < count;i++){
- for(j = 0;j < strlen(ch1);j++){
- if(ch[i] == ch1[j])
- flag = 1;
- }
- if(flag == 0){
- ch1[strlen(ch1)] = ch[i];
- }
- }//找出不同的字符
-
- for(i = 0;i < strlen(ch1) ;i++){
- a = 0;
- for(j = 0;j < strlen(ch);j++){
- if(ch1[i] == ch[j]){
- a++;
- }
- }
- if(a > b){
- b = a;
- ch2 = ch1[i];
- }
- }//挨个计算出现次数,如果后者比前者大,就覆盖掉
-
- printf("你总共输入了%d个字符,其中不同的字符个数有%d个\n",count,strlen(ch1));
- printf("它们是:%s",ch1);
- printf("出现次数最多的字符是%c,它总共出现了%d次",ch2,b);
-
- return 0;
- }
复制代码
为啥无法执行?连打印输入的字符串个数都不行
Blizzard0319 发表于 2021-8-25 11:35
可以运行,但是那个count的结果是错误的,后面的如果建立在错误的count上是正确的
运行结果如下:
请输 ...
因为你输入中有空格,而scanf.遇到空格则停止
想统计空格还需继续修改代码
|
|