字符串中计算各类字符个数
#include<stdio.h>main()
{
char c;
scanf("%s",c);
int letter=0,space=0,number=0,other=0;
while((c=getchar())!='\n')
{
if((c>='a'&&c<='z')||(c>='A'&&c<='Z'))
{
letter++;
}
else if(c==' ')
{
space++;
}
else if(c>='0'&&c<='9')
{
number++;
}
else
{
other++;
}
}
other=other-1;
printf("letter:%d\nspace:%d\nnumber:%d\nother:%d\n",letter,space,number,other);
}
输入: 123!/#fff@ //*要求以@结束且@不计入数目,但是我不会弄*
结果:letter:3
space:0
number:3
other:3
空格应该是三个,咋回事呢?