用简单易懂的C语言中的for编写“输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数”
时间: 2024-11-25 09:32:57 浏览: 8
在C语言中,我们可以使用`for`循环配合`while`和`switch`结构来完成这个任务。下面是一个简单的示例程序:
```c
#include <stdio.h>
int main() {
int letter_count = 0, space_count = 0, digit_count = 0, other_count = 0;
char input;
// 获取一行字符作为输入
printf("请输入一行字符: ");
while ((input = getchar()) != '\n') { // 循环直到换行符结束
switch (input) {
case 'a'...'z': // 英文字母(包括大写字母)
case 'A'...'Z':
letter_count++;
break;
case ' ': // 空格
space_count++;
break;
case '0'...'9': // 数字
digit_count++;
break;
default: // 其他字符
if (!isalnum(input)) { // 非字母数字字符
other_count++;
}
break;
}
}
// 输出统计结果
printf("英文字母: %d\n", letter_count);
printf("空格: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符: %d\n", other_count);
return 0;
}
```
在这个程序中,我们用`getchar()`获取用户输入的一个字符,并通过`switch`语句判断其类型。`isalnum()`函数用于检查一个字符是否为字母或数字。
阅读全文