1.输入一串字符,统计各字母出现的次数,不出现的字母不输出。(以C_1作为文件名。)
时间: 2024-02-03 07:13:22 浏览: 33
以下是C语言的代码实现:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int count[26] = {0};
printf("请输入一串字符:");
gets(str);
for(int i=0; str[i]!='\0'; i++) {
if(isalpha(str[i])) {
count[toupper(str[i])-'A']++;
}
}
for(int i=0; i<26; i++) {
if(count[i] != 0) {
printf("%c: %d\n", 'A'+i, count[i]);
}
}
return 0;
}
```
运行结果示例:
```
请输入一串字符:Hello, World!
D: 1
E: 1
H: 1
L: 3
O: 2
R: 1
W: 1
```
代码解析:
1. 首先定义一个字符数组 `str` 存储输入的字符,以及一个整型数组 `count` 用来统计各字母出现的次数,初始值全部为0。
2. 使用 `gets()` 函数从标准输入读入一行字符串。
3. 遍历字符串中的每个字符,如果是字母,就将对应的 `count` 数组元素加1。由于不区分大小写,所以使用 `toupper()` 函数将字符转换为大写。
4. 最后再次遍历 `count` 数组,如果某个元素不为0,就输出该字母和出现次数。
阅读全文