输入10个字符,统计其中英文字母,空格,数字字符和其他字符的个数
时间: 2024-09-06 07:03:11 浏览: 56
在 C 语言中,要统计输入字符串中各个字符类型的个数,你可以创建一个数组并遍历字符串,分别检查每个字符。这里我们可以使用 `ctype.h` 头文件提供的分类函数。以下是示例代码:
```c
#include <stdio.h>
#include <ctype.h>
#define BUFFER_SIZE 10
void count_chars(char input[]) {
int alpha_count = 0; // 英文字母
int space_count = 0; // 空格
int digit_count = 0; // 数字
int other_count = 0; // 其他字符
for (int i = 0; i < BUFFER_SIZE && input[i] != '\0'; i++) {
if (isalpha(input[i])) {
alpha_count++;
} else if (ispunct(input[i]) || isspace(input[i])) {
if (isspace(input[i])) {
space_count++;
} else {
other_count++; // 包括标点符号等
}
} else if (isdigit(input[i])) {
digit_count++;
}
}
printf("英文字母: %d\n", alpha_count);
printf("空格: %d\n", space_count);
printf("数字: %d\n", digit_count);
printf("其他字符(如标点符号): %d\n", other_count);
}
int main() {
char user_input[BUFFER_SIZE];
printf("请输入10个字符: ");
fgets(user_input, sizeof(user_input), stdin); // 考虑到换行符,fgets替代scanf
user_input[strcspn(user_input, "\n")] = '\0'; // 去除换行符
count_chars(user_input);
return 0;
}
```
这段程序将统计用户输入的前10个字符中各类型的字符数量。
阅读全文