输入一行字符,分别统计出其中的英文字母、空格、数字和其他字符的个数。用c语言的循环结构表达
时间: 2024-12-20 09:25:25 浏览: 7
在 C 语言中,你可以使用 `for` 循环配合 `switch` 结构来实现这个功能。首先,你需要定义四个计数器分别存储英文字母、空格、数字和其他字符的数量。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符种类的函数
int main() {
char input[100];
int alpha_count = 0; // 英文字母计数
int space_count = 0; // 空格计数
int digit_count = 0; // 数字计数
int other_count = 0; // 其他字符计数
printf("请输入一行字符: ");
fgets(input, sizeof(input), stdin); // 读取用户输入
for (int i = 0; input[i] != '\0'; i++) { // 遍历字符串
switch (input[i]) {
case ' ': // 空格
space_count++;
break;
case 'a'...'z': // 小写字母
case 'A'...'Z': // 大写字母
alpha_count++;
break;
case '0'...'9': // 数字
digit_count++;
break;
default: // 其他字符
if (!isalnum(input[i])) { // 判断是否字母或数字
other_count++;
}
break;
}
}
printf("英文字母: %d\n", alpha_count);
printf("空格: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符: %d\n", other_count);
return 0;
}
```
在这个程序中,我们遍历输入的每一字符,然后根据其ASCII值使用`switch`判断它是哪种类型的字符,并相应增加对应的计数器。
阅读全文