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

#include<stdio.h>
#include<string.h>
#include<math.h>
#include<stdlib.h>
struct student
{
	char name[101];
	int score1,score2,total;
};
int comp(const void*p,const void*q)
{
	return ((struct student*)q)->total-((struct student*)p)->total;
}
int main()
{
	struct student studentmax[101];
	int T,n,i;
	scanf("%d",&T);
	while(T--)
	{
		scanf("%d",&n);
		for(i = 0; i < n; i++)
		{
			scanf("%s %d %d",studentmax[i].name,&studentmax[i].score1,&studentmax[i].score2);
			studentmax[i].total = studentmax[i].score1 + studentmax[i].score2;
		}
		qsort(studentmax,n,sizeof(struct student),comp);
		for(i = 0; i < n; i++)
		{
			printf("%s\n",studentmax[i].name);
		}
	}
	return 0;	
}