Start: Jan, 08, 2018 19:10:00
2017年秋季学期程序设计基础(C语言)期末考试
End: Jan, 08, 2018 21:40:00
Time elapsed:
Time remaining:

Problem_ID: E
Result: Accepted
Time: 11ms
Memory: 1092kB
In contest: 1139

#include<stdio.h>
#include<stdlib.h>
#define ARRAY_SIZE 500
struct student{
		char name[105];
		double score[2];
		double total;
	};
	int comp(const void *p,const void *q){
		return ((struct student *)q)->total-((struct student *)p)->total;
	}
	int main (void){
		struct student studentArray[ARRAY_SIZE];
	double t;
	scanf("%lf",&t);
	while(t--){
		int i;
		double	n;
	    scanf("%lf",&n);
	for(i=0;i<n;i++){
		scanf("%s %lf %lf",studentArray[i].name,&studentArray[i].score[0],&studentArray[i].score[1]);
		studentArray[i].total=studentArray[i].score[0]+studentArray[i].score[1];
	}
	qsort (studentArray,n,sizeof(struct student),comp);
	for(i=0;i<n;i++){
		printf("%s\n",studentArray[i].name);
	}
	}
	return 0;
}