用C编写一个程序,输入一个长度不超过100的字符串,输出出现次数最多和最少的字符,出现次数相同时,输出第一次出现的字符。
时间: 2023-03-03 12:39:28 浏览: 71
以下是用C语言编写的程序,可以实现输入一个长度不超过100的字符串,输出出现次数最多和最少的字符,出现次数相同时,输出第一次出现的字符。
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[100];
int len, i, j, max, min;
char max_char, min_char;
printf("请输入一个字符串(长度不超过100):");
fgets(str, 100, stdin);
len = strlen(str);
int count[128] = {0}; // ASCII 码表总共128个字符
for (i = 0; i < len; i++) {
count[(int) str[i]]++; // 统计每个字符出现的次数
}
// 找出出现次数最多和最少的字符
max = 0;
min = len;
for (i = 0; i < 128; i++) {
if (count[i] > max) {
max = count[i];
max_char = (char) i;
}
if (count[i] < min && count[i] != 0) { // 注意要排除未出现的字符
min = count[i];
min_char = (char) i;
}
}
// 输出结果
printf("出现次数最多的字符是:%c,出现次数为:%d\n", max_char, max);
printf("出现次数最少的字符是:%c,出现次数为:%d\n", min_char, min);
return 0;
}
```
运行程序后,输入一个字符串,程序将输出出现次数最多和最少的字符。