输入一个字符串,输出该字符串中出现次数最多的字符及其出现次数。c语言
时间: 2023-10-30 17:16:19 浏览: 175
Java求字符串中出现次数最多的字符串以及出现次数
下面是一个简单的 C 语言程序,可以实现该功能:
```c
#include <stdio.h>
#include <string.h>
#define MAX_LEN 100
int main() {
char str[MAX_LEN];
int freq[256] = {0}; // 初始化所有字符频率为 0
printf("请输入一个字符串:");
fgets(str, MAX_LEN, stdin);
int len = strlen(str);
// 统计每个字符的出现次数
for (int i = 0; i < len - 1; i++) {
freq[str[i]]++;
}
int max_freq = 0;
char max_char;
// 找出出现次数最多的字符
for (int i = 0; i < 256; i++) {
if (freq[i] > max_freq) {
max_freq = freq[i];
max_char = i;
}
}
printf("出现次数最多的字符是 %c,出现了 %d 次。\n", max_char, max_freq);
return 0;
}
```
程序先让用户输入一个字符串,然后用一个数组 `freq` 统计每个字符的出现次数。最后遍历一遍 `freq` 数组,找出出现次数最多的字符。注意,程序中用 `fgets()` 函数读入字符串,而不是 `gets()` 函数,以避免缓冲区溢出的问题。
阅读全文