用C语言编写程序,输入20个字符,统计其中的英文字母、空格或回车、数字字符和其他字符的个数
时间: 2024-09-07 15:04:20 浏览: 37
在C语言中,你可以通过以下步骤编写程序来统计20个输入字符中的各类字符:
1. 首先,声明并初始化四个整型变量,分别用于存储英文字母、空格/回车、数字以及其他字符的数量,比如:
```c
int alpha_count = 0; // 字母计数
int space_count = 0; // 空格/回车计数
int digit_count = 0; // 数字计数
int other_count = 0; // 其他字符计数
```
2. 使用`getchar()`函数从用户处获取每个字符。因为题目限制了输入20个字符,可以循环20次,直到达到这个数目:
```c
for (int i = 0; i < 20 && getchar() != EOF; ++i) {
```
3. 对于每次获取的字符,检查其ASCII值来判断类别:
- 英文字母:检查是否在'a'到'z'或'A'到'Z'的范围内;
- 空格/回车:检查是否是' ' 或 '\n'(换行符);
- 数字:检查是否在'0'到'9'的范围内;
- 其他字符:所有其他ASCII码不属于上述范围的字符。
4. 分别对相应的计数器加一:
```c
if ('a' <= getchar() && getchar() <= 'z' || 'A' <= getchar() && getchar() <= 'Z')
alpha_count++;
else if (getchar() == ' ' || getchar() == '\n')
space_count++;
else if ('0' <= getchar() && getchar() <= '9')
digit_count++;
else
other_count++;
```
5. 循环结束后,打印出各类型的字符计数:
```c
printf("英文字母: %d\n", alpha_count);
printf("空格/回车: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符: %d\n", other_count);
```
阅读全文