C语言,输入n个字符,统计英文字符和数字字符和其他字符的个数
时间: 2024-10-24 18:02:33 浏览: 13
输入10个字符,统计其中英文字母、空格或回车、数字字符和其他字符的个数(C语言代码)
在C语言中,你可以通过循环遍历用户输入的字符串,并利用ASCII码特性来统计英文字符、数字字符和其他字符的数量。下面是一个简单的示例:
```c
#include <stdio.h>
#include <ctype.h> // 包含处理字符类型的函数
int main() {
int n, count_alpha = 0, count_digit = 0, count_other = 0;
printf("请输入一个字符串: ");
scanf("%d", &n); // 输入字符个数,注意这里假设n代表的是整个字符串的长度,不是单独字符
getchar(); // 吃掉换行符,防止它被计入计数
char str[n+1]; // 留出空间给空字符
fgets(str, n+1, stdin);
for (int i = 0; i < n; i++) {
if (isalpha(str[i])) { // 检查是否为字母
count_alpha++;
} else if (isdigit(str[i])) { // 检查是否为数字
count_digit++;
} else { // 其他字符,包括空格、标点等
count_other++;
}
}
printf("英文字符有 %d 个,数字字符有 %d 个,其他字符有 %d 个。\n", count_alpha, count_digit, count_other);
return 0;
}
```
在这个程序中,`isalpha()` 和 `isdigit()` 函数分别用于检查字符是否为字母和数字。非这两者的就是其他字符。
阅读全文