解题思路:
注意事项:
参考代码:
#include <iostream>
#include <algorithm>
using namespace std;
struct student
{
char num[20];
char name[20];
int math;
int english;
int chinese;
};
int main()
{
int n,a[10000],t=0,sum1=0,sum2=0,sum3=0,i;
cin>>n;
struct student std[n];
for(i=0;i<n;i++)
{
scanf("%s%s%d%d%d",&std[i].num,&std[i].name,&std[i].math,
&std[i].english,&std[i].chinese);
getchar();
sum1+=std[i].math;sum2+=std[i].english;sum3+=std[i].chinese;
a[t]=std[i].math;a[t+1]=std[i].english;a[t+2]=std[i].chinese;
t+=3;
}
sort(a,a+t);
for(int j=0;j<t;j++)
{
if(std[j].math==a[t-1]||std[j].chinese==a[t-1]||std[j].english==a[t-1])
{//寻找最高分数得那一科
printf("%d %d %d\n",sum1/n,sum2/n,sum3/n);
printf("%s %s %d %d %d\n",std[j].num,std[j].name,std[j].math,
std[j].english,std[j].chinese);
break;
}
}
return 0;
}
0.0分
0 人评分