单词分析(蓝桥杯第十一届省赛题目)(C/C++组)

 具体思路:

定义一个字符串和数组,然后遍历字符串,每个字母出现的个数加到对应的位置中(例如出现一次a,那么a[0]加1,出现一次z,那么a[25]加1),最后比较出出现次数最多的字母

 代码:(使用了最笨的列举法)

#include <bits/stdc++.h>
using namespace std;

int arr[26];
string s;
int zuida=0,maxnumber=0,i;
char zimu;
int main()
{
	cin>>s;
	int cnt=s.length();
	for(int i=0;i<cnt;i++)
	{
		if(s[i]=='a')
		{
			arr[0]++;
		}
		if(s[i]=='b')
		{
			arr[1]++;
		}
		if(s[i]=='c')
		{
			arr[2]++;
		}
		if(s[i]=='d')
		{
			arr[3]++;
		}
		if(s[i]=='e')
		{
			arr[4]++;
		}
		if(s[i]=='f')
		{
			arr[5]++;
		}
		if(s[i]=='g')
		{
			arr[6]++;
		}
		if(s[i]=='h')
		{
			arr[7]++;
		}
		if(s[i]=='i')
		{
			arr[8]++;
		}
		if(s[i]=='j')
		{
			arr[9]++;
		}
		if(s[i]=='k')
		{
			arr[10]++;
		}
		if(s[i]=='l')
		{
			arr[11]++;
		}
		if(s[i]=='m')
		{
			arr[12]++;
		}
		if(s[i]=='n')
		{
			arr[13]++;
		}
		if(s[i]=='o')
		{
			arr[14]++;
		}
		if(s[i]=='p')
		{
			arr[15]++;
		}
		if(s[i]=='q')
		{
			arr[16]++;
		}
		if(s[i]=='r')
		{
			arr[17]++;
		}
		if(s[i]=='s')
		{
			arr[18]++;
		}
		if(s[i]=='t')
		{
			arr[19]++;
		}
		if(s[i]=='u')
		{
			arr[20]++;
		}
		if(s[i]=='v')
		{
			arr[21]++;
		}
		if(s[i]=='w')
		{
			arr[22]++;
		}
		if(s[i]=='x')
		{
			arr[23]++;
		}
		if(s[i]=='y')
		{
			arr[24]++;
		}
		if(s[i]=='z')
		{
			arr[25]++;
		}
	}
	for(i=0;i<26;i++)
	{
		if(zuida<arr[i])
		{
			zuida=arr[i];
			maxnumber=i;
		}
	}
	if(maxnumber==0) zimu='a';
	if(maxnumber==1) zimu='b';
	if(maxnumber==2) zimu='c';
	if(maxnumber==3) zimu='d';
	if(maxnumber==4) zimu='e';
	if(maxnumber==5) zimu='f';
	if(maxnumber==6) zimu='g';
	if(maxnumber==7) zimu='h';
	if(maxnumber==8) zimu='i';
	if(maxnumber==9) zimu='j';
	if(maxnumber==10) zimu='k';
	if(maxnumber==11) zimu='l';
	if(maxnumber==12) zimu='m';
	if(maxnumber==13) zimu='n';
	if(maxnumber==14) zimu='o';
	if(maxnumber==15) zimu='p';
	if(maxnumber==16) zimu='q';
	if(maxnumber==17) zimu='r';
	if(maxnumber==18) zimu='s';
	if(maxnumber==19) zimu='t';
	if(maxnumber==20) zimu='u';
	if(maxnumber==21) zimu='v';
	if(maxnumber==22) zimu='w';
	if(maxnumber==23) zimu='x';
	if(maxnumber==24) zimu='y';
	if(maxnumber==25) zimu='z';
	cout<<zimu<<endl<<zuida;
}

猜你喜欢

转载自blog.csdn.net/m0_71934846/article/details/128697214
今日推荐