输入一个只有小写英文字母组成的单词(单词数小于1000),输出两行。
第一行输出出现次数最多的字母,第二行输出出现的次数。
例:
输入:hdsakjaa
输出:a
3
看到此题,首先需要解决的只有两个大问题,①如何找到出现次数最多的那个英文单词②如何求得出现的次数。字符问题肯定会涉及到ASCII表,ASCII表点这里。
#include <bits/stdc++.h>
using namespace std;
int main()
{
int arr1[26]={0};//储存每个小写字母出现的次数
int max=0;//最大出现的次数
char m;//出现次数最多的字母
string str;//输入的单词
cin>>str;
for(int i=0;i<str.length();i++){
++arr1[str[i]-97];//同一单词减97转化成的整数一定,所以通过自加来判断出现最多的单词。
}
for(int i=0;i<26;i++){
if(arr1[i]>max){
max=arr1[i];
m=i+97;
}
}
cout<<m<<endl;
cout<<max;
return 0;
}