C++ 编写一个程序,从键盘上输入一篇英文文章,统计出其中的英文字母(不区分大小写)、数字和其他非空白字符的个数。
时间: 2023-05-22 16:02:54 浏览: 171
可以使用 C 语言的 getchar() 函数来逐个读取输入的字符,然后根据其 ASCII 码值判断属于哪一类字符,并分别累加计数。以下是示例代码:
```
#include <stdio.h>
int main() {
int ch;
int letters = 0, digits = 0, others = 0;
printf("Please enter an English article:\n");
while ((ch = getchar()) != EOF) {
if ((ch >= 'a' && ch <= 'z') || (ch >= 'A' && ch <= 'Z')) {
letters++;
}
else if (ch >= '0' && ch <= '9') {
digits++;
}
else if (ch != ' ' && ch != '\t' && ch != '\n') {
others++;
}
}
printf("Letters: %d\n", letters);
printf("Digits: %d\n", digits);
printf("Others: %d\n", others);
return 0;
}
```
该程序会不断从键盘读取字符,直到遇到文件结束符(EOF),可以通过按下 Ctrl+Z 或输入结束标志来触发。在读取字符时,使用逻辑运算符和 ASCII 码值进行判断,可以区分英文字母、数字和其他字符,并分别进行计数。最后输出三类字符的个数即可。
阅读全文