【题目描述】
给定一个由a-z这26个字符组成的字符串,统计其中哪个字符出现的次数最多。
【输入】
输入包含一行,一个字符串,长度不超过1000。
【输出】
输出一行,包括出现次数最多的字符和该字符出现的次数,中间以一个空格分开。如果有多个字符出现的次数相同且最多,那么输出ascii码最小的那一个字符。
【输入样例】
abbccc
【输出样例】
c 3
1 #include <iostream> 2 #include <cstdio> 3 #include <string> 4 using namespace std; 5 int main() { 6 int a[26], max, zhi, len; 7 char b[1000]; 8 cin >> b; 9 len = strlen(b); 10 for (int i = 0; i < 26; i++) //将数组全部置为0可以在定义的时候置0:int a[26]={0}; 11 { 12 a[i] = 0; 13 } 14 for (int i = 0; i < len; i++) 15 { 16 a[b[i] - 'a']++; 17 } 18 max = a[0]; 19 zhi = 0; 20 for (int i = 1; i < 26; i++) 21 { 22 if (max < a[i]) { 23 max = a[i]; 24 zhi = i; 25 } 26 } 27 cout << char('a' + zhi) << " " << max; 28 return 0; 29 }