C语言用一维数组解决

求用一维数组解决。
要求输入数据有多组,每组两行,第一行为一个整数n,第二行为票。输出票数最多的编号。

img

定义一维数组,索引对应学生编号,对应的值对应票数。

#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;
}
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632