c语言编写一个程序,统计输入一行字符串中各个字母使用频率(大小写不区分),将次数不为零的字母及次数输出。
时间: 2023-07-15 16:11:20 浏览: 781
以下是一个示例程序,可以实现输入一行字符串并统计各个字母的使用频率:
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN];
int freq[26] = {0}; // 初始化每个字母频率为0
printf("请输入一行字符串:\n");
fgets(str, MAX_LEN, stdin); // 读入一行字符串
for (int i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) { // 只处理字母
freq[tolower(str[i]) - 'a']++; // 忽略大小写,更新对应字母的频率
}
}
printf("各个字母的使用频率如下:\n");
for (int i = 0; i < 26; i++) {
if (freq[i] != 0) { // 只输出次数不为零的字母
printf("%c: %d\n", 'a' + i, freq[i]);
}
}
return 0;
}
```
该程序使用了一个长度为26的数组 `freq` 来记录每个字母的出现次数,通过遍历输入的字符串并忽略大小写来更新数组中对应字母的频率。最后再遍历数组输出次数不为零的字母及其出现次数。
阅读全文