#include <iostream>
#include <cstdio>
#include <string>
#include <string.h>
using namespace std;
int cnt[26] = {0}, cnt_max = -1;
int main() {
for (int i = 0; i < 4; ++i) {
string sent;
getline(cin, sent);
for (int j = 0; j < sent.length(); ++j) {
if (sent[j] >= 'A' && sent[j] <= 'Z') {
++cnt[sent[j] - 'A'];
}
}
if (i != 3) {
getchar();
}
}
for (int i = 0; i < 26; ++i) {
if (cnt[i] > cnt_max) {
cnt_max = cnt[i];
}
}
char table[26][cnt_max + 1];
memset(table, ' ', sizeof(table));
for (int i = 0; i < 26; ++i) {
table[i][cnt_max] = (char)'A' + i;
for (int j = 0; j < cnt[i]; ++j) {
table[i][cnt_max - 1 - j] = '*';
}
}
for (int i = 0; i < cnt_max + 1; ++i) {
for (int j = 0; j < 26; ++j) {
if (j <= 25) {
printf("%c ", table[j][i]);
} else {
printf("%c", table[j][i]);
}
}
printf("\n");
}
return 0;
}
使用Vscode能够得到答案。