输入一个字符串 输出其中出现次数最多的字符不区分大小写 用c++实现
时间: 2023-04-03 16:04:13 浏览: 124
您好,我可以回答这个问题。以下是用 C 语言实现的代码:
```c
#include <stdio.h>
#include <ctype.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN];
int freq[26] = {0}; // 存储每个字母出现的次数,初始值为 0
int max_freq = 0; // 出现次数最多的字母的出现次数
char max_char; // 出现次数最多的字母
printf("请输入一个字符串(不超过 %d 个字符):\n", MAX_LEN);
fgets(str, MAX_LEN, stdin);
for (int i = 0; str[i] != '\0'; i++) {
if (isalpha(str[i])) { // 判断是否为字母
int index = tolower(str[i]) - 'a'; // 转换为小写字母后计算下标
freq[index]++; // 对应字母出现次数加 1
if (freq[index] > max_freq) { // 更新出现次数最多的字母
max_freq = freq[index];
max_char = tolower(str[i]);
}
}
}
printf("出现次数最多的字母是 %c,出现了 %d 次。\n", max_char, max_freq);
return 0;
}
```
感谢您的提问!
阅读全文