编写一个函数,接受一个字符串参数,返回该字符串中第一个出现次数最多的字符c语言
时间: 2023-09-01 15:07:31 浏览: 48
以下是一个简单的 C 代码示例,它使用了哈希表来计算字符串中出现次数最多的字符:
```c
#include <stdio.h>
#include <string.h>
char findMostFrequentChar(char* str) {
int len = strlen(str);
int count[256] = {0}; // 哈希表,存储每个字符出现的次数
int max_count = 0;
char result;
for (int i = 0; i < len; i++) {
count[(int)str[i]]++;
if (count[(int)str[i]] > max_count) {
max_count = count[(int)str[i]];
result = str[i];
}
}
return result;
}
int main() {
char str[100];
printf("请输入字符串:");
scanf("%s", str);
char result = findMostFrequentChar(str);
printf("出现次数最多的字符是:%c\n", result);
return 0;
}
```
这个函数首先将字符串转换为字符数组,然后使用一个长度为256的哈希表来存储每个字符出现的次数。遍历字符串时,每当遇到一个字符,就将对应的哈希表项加1。同时,如果该字符出现的次数超过了当前记录的最大次数,就将该字符记录为结果,并更新最大次数。最后,返回结果即可。