解题思路:同时存在多个最多字符时要按字母表顺序输出,因此要创建一个26大小的整形数组,再与统计的最大数量max1比较数值相同时输出对应字符。
注意事项:整型和字符之间的转换
参考代码:
#include<bits/stdc++.h> using namespace std; int c[26];//26个英文字母,统计每个字母数量 int max1=0;//最多的字母数量 int main() { string s; cin>>s; for(int i=0;i<s.length();i++) { c[s[i]-'A']++;//将字符转为整型并根据字母表位置加一 max1=max(c[s[i]-'A'],max1);//动态的找c数组中的最大值 } for(int i=0;i<26;i++) if(c[i]==max1) { char cc='A'+i;//将整型转化为字符并输出 cout<<cc; } return 0; }
0.0分
1 人评分
产生数 (C++代码)(大数乘法也是可以避免的么hhhh)浏览:1512 |
十->二进制转换 (C语言代码)浏览:1406 |
字符串的输入输出处理 (C语言代码)浏览:2020 |
C语言程序设计教程(第三版)课后习题8.3 (Java代码)浏览:1373 |
printf基础练习2 (C语言代码)浏览:567 |
十->二进制转换 (C语言代码)浏览:1291 |
简单的a+b (C++语言代码)浏览:859 |
【矩阵】 (C++代码)浏览:949 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:616 |
DNA (C语言代码)浏览:741 |