输入一串字符,统计其中大写字母A-Z各出现多少次,输出出现过的字母(每5个字母占一行)及其出现次数。
输入格式:
字符串
输出格式:
输出出现过的字母(每5个字母占一行)及其出现次数。
例如:A:5次 B:3次 F2次
输入样例1:
12AEAEwsDD45F222GG2RR3TT
输出样例1:
A:2次 D:2次 E:2次 F:1次 G:2次
R:2次 T:2次
输入样例2:
1234asdswe123
输出样例2:
26个大写字母都没出现过
输入一串字符,统计其中大写字母A-Z各出现多少次,输出出现过的字母(每5个字母占一行)及其出现次数。
输入格式:
字符串
输出格式:
输出出现过的字母(每5个字母占一行)及其出现次数。
例如:A:5次 B:3次 F2次
输入样例1:
12AEAEwsDD45F222GG2RR3TT
输出样例1:
A:2次 D:2次 E:2次 F:1次 G:2次
R:2次 T:2次
输入样例2:
1234asdswe123
输出样例2:
26个大写字母都没出现过
关注
#include <stdio.h>
#include <string.h>
#include <ctype.h>
int main() {
char input[1000];
printf("请输入一串字符:");
fgets(input, sizeof(input), stdin);
int count[26] = {0}; // 用于统计26个大写字母出现的次数
for (int i = 0; i < strlen(input); i++) {
if (isupper(input[i])) { // 判断是否为大写字母
count[input[i] - 'A']++; // 统计大写字母出现次数
}
}
int printed = 0; // 记录已经输出的字母个数
for (int i = 0; i < 26; i++) {
if (count[i] > 0) {
printf("%c:%d次 ", 'A' + i, count[i]); // 输出字母及其出现次数
printed++;
if (printed % 5 == 0) {
printf("\n"); // 每输出5个字母换行
}
}
}
if (printed == 0) {
printf("26个大写字母都没出现过\n");
} else if (printed % 5 != 0) {
printf("\n");
}
return 0;
}