解题思路:
1.定义一个二维数组用来储存颜色。
2.从第一个颜色往后比,并记录相同的数量,位置。得到最大值,输出该位置代表的颜色。
代码:
#include<iostream>
#include<string.h>
using namespace std;
int main()
{
int i,j,n,m,c,MAX;
while(cin>>n)
{
if(!n)break;
char l[n][10];
int a[n];
memset(a,0,sizeof(a));
for(i=0;i<n;i++)
{
cin>>l[i];
}
for(i=0;i<n;i++)
{
m=0;
for(j=i+1;j<n;j++)
{
if(strcmp(l[i],l[j])==0)m++;
}
a[i]=m;
}
MAX=a[0];
for(i=0;i<n;i++)
{
if(a[i]>=MAX){MAX=a[i];c=i;}
}
cout<<l[c]<<endl;
}
}