字母统计
现在给你一个由小写字母组成字符串,要你找出字符串中出现次数最多的字母,如果出现次数最多字母有多个那么输出最小的那个。
Input
第一行输入一个正整数T(0<T<25)
随后T行输入一个字符串s,s长度小于1010。
随后T行输入一个字符串s,s长度小于1010。
Output
每组数据输出占一行,输出出现次数最多的字符;
Sample Input
3 abcd bbaa jsdhfjkshdfjksahdfjkhsajkf
Sample Output
a a j
代码:
#include<stdio.h>
#include<string.h>
int main()
{
int t;
char s[1050];
scanf("%d",&t);
while(t--)
{
int i,max;
int a[26];
memset(a,0,sizeof(a));//把数组初始化0
scanf("%s",s);//输入字符串s
for(i=0; s[i]!='\0'; i++)
a[s[i]-'a']++;//把s中的每一个字母化为a数组的下标,并记录每一个字母出现的次数
max=0;
for(i=1; i<26; i++)
{
if(a[i]>a[max])//比较哪一个字母出现次数的最多
max=i;//令出现次数最多的那个字母的下标等于max
}
printf("%c\n",max+'a');//输出那个字母
}
return 0;
}
ps:第一次写博客啊。啊。。