统计一行字符中的英文字母,数字,空格和其他字符:
请教大神我自己编写的程序这里那有问题?结果总是很大的数字?统计一行字符中的英文字母,数字,空格和其他字符:
#include <stdio.h>
int main()
{
char c[20],i=0;
int letters=0,space=0,digit=0,other=0;
printf("请输入一行字符:\n");
scanf("%c",c);
while(c[i++]!='\n')
{
if (c[i]>='a' && c[i]<='z' || c[i]>='A' && c[i]<='Z')
letters++;
else if (c[i]==' ')
space++;
else if (c[i]>='0' && c[i]<='9')
digit++;
else
other++;
}
printf("字母数:%d\n空格数:%d\n数字数:%d\n其它字符数:%d\n",letters,space,digit,other);
return 0;
}