求用一维数组解决。
要求输入数据有多组,每组两行,第一行为一个整数n,第二行为票。输出票数最多的编号。
定义一维数组,索引对应学生编号,对应的值对应票数。
#include <stdio.h>
#include<string.h>
int main()
{
int stu[30]={0};
int n,no,max=0;
scanf("%d",&n);
for (int i=1;i <=n;i++){
scanf("%d",&no);
stu[no]=stu[no]+1;
}
//求最大票数
for (int i=1;i <=n;i++){
if(stu[i]>max)
max=stu[i]
}
for (int i=1;i <=n;i++){
if(stu[i]==max)
printf("%d ",i);
}
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!