用C++语言编写:给定一个由 a-z这 26个字符组成的字符串,统计其中哪个字符出现的次数最多。
时间: 2024-05-10 18:14:53 浏览: 127
一个字符串中出现次数最多的字符 统计这个次数【实现代码】
可以使用一个大小为 26 的整型数组来记录每个字符出现的次数,数组下标对应着字符的 ASCII 值减去 'a' 的 ASCII 值。具体实现如下:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int count[26] = {0}; // 初始化数组中所有元素为 0
int max_count = 0, max_index = -1;
printf("请输入一个由 a-z 这 26 个字符组成的字符串:");
scanf("%s", str);
int len = strlen(str);
for (int i = 0; i < len; i++) {
if (str[i] >= 'a' && str[i] <= 'z') { // 只统计小写字母
count[str[i] - 'a']++;
if (count[str[i] - 'a'] > max_count) {
max_count = count[str[i] - 'a'];
max_index = str[i] - 'a';
}
}
}
if (max_index == -1) {
printf("字符串中没有小写字母。\n");
} else {
printf("出现次数最多的字符是 %c,出现了 %d 次。\n", max_index + 'a', max_count);
}
return 0;
}
```
运行程序,输入一个字符串,即可得出出现次数最多的字符。
阅读全文