level 6
#include<stdio.h>
#include<malloc.h>
struct stu_mag{
int n;
char na[30];
float ga;
float gb;
float gc;
int k;
};
void swap(float *i,float *j){
float k=*i;
*i=*j;
*j=k;
}
int main(){
struct stu_mag *p=(struct stu_mag*)calloc(5,sizeof(struct stu_mag));
int i;
for(i = 0; i < 5; i ++){
scanf("%d%s%f%f%f",&p[i].n,&p[i].na,&p[i].ga&p[i].gb,&p[i].gc);
}
float t[5];
for(i = 0; i < 5; i ++){
t[i]=(p[i].ga+p[i].gb+p[i].gc)/3;
printf("%d %s %.2f %.2f %.2f %.2f\n",p[i].n,p[i].na,p[i].ga,p[i].gb,p[i].gc,t[i]);
}
int j;
for(i = 0; i < 4; i ++){
for(j = i + 1; j < 5; j ++){
if(t[i]<t[j]){swap(&t[i],&t[j]);
}
}
}
for(i = 0; i < 3; i ++){
for(j = 0; j < 5; j ++){
if((p[j].ga+p[j].gb+p[j].gc)/3 == t[i] && p[j].k == 0){
p[j].k=1;
break;
}
}
printf("%d %s %.2f %.2f %.2f %.2f\n",p[j].n,p[j].na,p[j].ga,p[j].gb,p[j].gc,t[i]);
}
free(p);
return 0;
}
2022年10月10日 08点10分

