#include<stdio.h>
#include<string.h>
int main()
{
char str[81];
int i=0;
int letters=0,digits=0,blank=0,others=0;
scanf("%s",str);
while(str[i]!='\0')
{
if ((str[i] >= 'a')&&(str[i] <= 'z')||(str[i] > 'A')&&(str[i] <= 'Z'))
letters++;
else if ((str[i] >= '0')&&(str[i] <= '9'))
digits++;
else if (str[i] == ' ')
blank++;
else others++;
i++;
}
printf("%d %d %d %d",letters,digits,blank,others);
return 0;
}
C语言改错误,统计字母,数字,空格,和其他字符个数。一定要用数组呀,最好能改一下程序
答案:1 悬赏:0 手机版
解决时间 2022-01-01 15:30
- 提问者网友:精神病院里
- 2021-12-31 23:48
最佳答案
- 五星知识达人网友:人類模型
- 2022-01-01 00:55
您好!很高兴为您解答。
修改如下:
#include<stdio.h>
#include<string.h>
int main()
{
char str[81];
int i=0;
int letters=0,digits=0,blank=0,others=0;
//scanf("%s",str);
while((str[i]=getchar())!='\n')
{
if ((str[i] >= 'a'&&str[i] <= 'z')||(str[i] > 'A'&&str[i] <= 'Z'))
letters++;
else if (str[i] >= '0'&&str[i] <= '9')
digits++;
else if (str[i] == ' ')
blank++;
else others++;
i++;
}
printf("%d %d %d %d",letters,digits,blank,others);
return 0;
}
运行结果:
望采纳~如您还有不解,欢迎追问~
修改如下:
#include<stdio.h>
#include<string.h>
int main()
{
char str[81];
int i=0;
int letters=0,digits=0,blank=0,others=0;
//scanf("%s",str);
while((str[i]=getchar())!='\n')
{
if ((str[i] >= 'a'&&str[i] <= 'z')||(str[i] > 'A'&&str[i] <= 'Z'))
letters++;
else if (str[i] >= '0'&&str[i] <= '9')
digits++;
else if (str[i] == ' ')
blank++;
else others++;
i++;
}
printf("%d %d %d %d",letters,digits,blank,others);
return 0;
}
运行结果:
望采纳~如您还有不解,欢迎追问~
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯