51,712
社区成员




#include<stdio.h>
struct student
{
int c;//语文
int m;//数学
int e;//英语
int all;//总分
int num;//学号
}a[300];
int main()
{
int n,max=1,j=0;
scanf("%d",&n);
for(int i=1;i<=n;i++)
{
scanf("%d%d%d",&a[i].c,&a[i].m,&a[i].e);
a[i].all=a[i].c+a[i].m+a[i].e;
a[i].num=i;//学号
}
while(j!=5)
{
//选出最大值
for(int i=2;i<=n;i++)
{
//列举三种情况
if(a[i].all>a[max].all||(a[i].all==a[max].all&&a[i].c>a[max].c)||(a[i].all==a[max].all && a[i].c==a[max].c && a[i].num<a[max].num))
max=i;
}
printf("%d %d\n",a[max].num,a[max].all);
a[max].all=-1;//选过这个点排出
max=1;//还原
j++;
}
return 0;
}