这个用来字符分类统计怎么不行呀 一直超时 是出不来循环吗 感谢大佬相助 !!c语言
问题描述:
#include <stdio.h>
int main ()
{
int letter=0 , number=0, others=0, space=0;
char ch;
scanf("%c",&ch);
while (ch != '\n'){
if (ch>='a' && ch<='z' || ch>='A' && ch<='Z')
letter++;
else if (ch >='0' && ch <='9')
number++;
else if (ch == ' ')
space++;
else
others++;
}
printf("%d%d%d%d",letter , number, others, space);
return 0;
}
答
ch是char类型,单字符,scanf输入接收后只接收了第一个字符,下面while就会死循环
答
#include <stdio.h>
int main ()
{
int letter=0 , number=0, others=0, space=0;
char ch;
//scanf("%c",&ch);
while ((ch=getchar()) != '\n'){
if (ch>='a' && ch<='z' || ch>='A' && ch<='Z')
letter++;
else if (ch >='0' && ch <='9')
number++;
else if (ch == ' ')
space++;
else
others++;
}
printf("%d,%d,%d,%d",letter , number, others, space);
return 0;
}