我用C编写了一个短代码,该代码计算小写字母(仅包括字母),当我输入数字或其他内容时它将停止工作。这是代码:
char letter;
int num=0;
do
if(islower(letter = getchar()))
num++;
while(isalpha(letter));
printf("%d", num);
return 0;
我的问题是它不能正常工作(仅打印“ 1”作为结果)。
当下一个字符不是字母时,必须停止它。不确定该部分是否正确。
知道我错了什么吗?谢谢。
最佳答案
怎么了
char letter;
int num=0;
while (isalpha(letter = getchar())) {
if (islower(letter)) num++;
}
printf("%d", num);
return 0;
当下一个字符不是字母时,必须停止它。
可以缓冲键盘输入-在按下Enter之前不进行处理
结果仅打印“ 1”
您能写一些在控制台输入导致“ 1”输出的示例吗?
关于c - 计算小写字母,直到输入为字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43169858/