给定一个字符串,请求输出出现频率最高的字符及其出现次数。字符串中仅有一个字符出现次数最多。如何编写程序来实现这个功能?C语言
时间: 2024-10-19 08:11:34 浏览: 33
统计给定文件中给定字符串的出现次数_java_统计给定文件中给定字符串的出现次数_
5星 · 资源好评率100%
在C语言中,要计算一个字符串中最常出现的字符及其出现次数,可以使用哈希表(如`char`数组)和计数器。这里提供一种简单的示例:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
void findMostFrequentChar(char *str);
int main() {
char str[] = "example string with repeated characters"; // 输入字符串
findMostFrequentChar(str);
return 0;
}
// 函数实现
void findMostFrequentChar(char *str) {
int count[256] = {0}; // 哈希表,用于存储每个字符的出现次数
int maxCount = 0; // 最大出现次数
char mostFrequentChar;
// 计算每个字符的出现次数
for (int i = 0; str[i] != '\0'; i++) {
count[str[i]]++;
if (count[str[i]] > maxCount) {
maxCount = count[str[i]];
mostFrequentChar = str[i];
}
}
printf("The most frequent character is '%c' and it appears %d times.\n", mostFrequentChar, maxCount);
}
```
这段代码遍历输入的字符串,更新字符对应的计数器。当遇到某个字符的计数超过当前最大计数时,更新最大计数和最频繁字符。最后输出结果。
阅读全文