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: 15ms
Memory: 1092kB
In contest: 1139

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