(已解决)字符串分类统计 c语言 问题
这是题目
输入一行字符,分别统计出其中英文字母、数字、空格和其他字符的个数。
这是我的代码
#include <stdio.h>
#include <string.h>
int main ()
{
char str[201];
int i, zm = 0, sz = 0, bd = 0, kg = 0;
scanf("%s", str);
for(i = 0; i < strlen(str); i++)
{
if('a' <= str[i] && str[i] <= 'z' || 'A' <= str[i] && str[i] <= 'Z') zm++;
else if(str[i] == ' ') kg++;
else if('0' <= str[i] && str[i] <= '9') sz++;
else bd++;
}
printf("%d %d %d %d", zm, sz, kg, bd);
return 0;
}
就是通不过,好像是因为第一个空格后的字符全部都扫描不到,但不知道是为什么?
change
scanf("%s", str);
toscanf("%[^\n]", str);