题目描述:
源代码:
#include<string.h>
#include<stdio.h>
int main()
{
int n = 0;//统计字符的个数
int sz = 0;//用于计算字符串长度
int i = 0;
int j = 0;
int more = 0;//用来统计出现最多的一个数的字符位置
char a[101] = { 0 };
char b[30] = { 0 };
int c[30] = { 0 };//初始化每个字母刚开始个数为0
scanf("%d", &n);
getchar();//第一个scanf输入后在缓冲区有一个回车符,我们需要用getchar将回车符吸收掉
scanf("%s", a);
sz = strlen(a);
for (j = 0; j < 26; j++)
{
b[j] = 'a' + j;
}//用一个for循环来表示26个小写字母
for (i = 0; i < sz; i++)
{
for (j = 0; j < 26; j++)
{
if (a[i] == b[j])
{
c[j]++;//26个小写字母分别对应26个不同的数字0,出现一个相同则+1
}
}
}
for (j = 0; j < 26; j++)
{
if (c[j] > c[0])
{
c[0] = c[j];
more = j;
}
}
printf("%c\n", b[more]);
return 0;
}