这是教材上的一个课后题,我今天下午才把他搞懂,不过还是有人已经指出了他的错误了,哈!谢谢上面的老兄.其实上面的第一个printf不用也可以.用了更好了.
这里主要是用while实现字符的一个个读入.
我为你痴,为你狂!
楼主你的程序没有多大实在意义,因为字符只能接受单个字符,我想原程序的本意是想输入字符串吧,然后判断吧,分类输出,总的来说,你的程序很乱,自己好好想想,顺便说一声我也是四川的,很高兴在这里遇到你这个老乡
#include<stdio.h>
main()
{
int letters=0,blanks=0,digits=0,others=0;
char c;
printf("Please enter the sign:");
c=getchar();
while(c!='1'){//当输入'1'时结束
if(c>='a'&&c<='z'||c>='A'&&c<='Z')
letters++;
else if(c=' ')
blanks++;
else if(c>='0'&&c<='9')
digits++;
else
others++;
scanf("%c",&c);
}
printf("letters=%d,blanks=%d,digits=%d,others=%d",letters,blanks,digits,others);
}
只是按你能理解的方式写的