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

#include <stdio.h>
#include <string.h>
struct student 
{
	char name[50];
	int test1;
	int test2;
	int test3;
};
int main(){
	int T;
	struct student stu[100],change;
	scanf("%d",&T);
	while (T--)
	{
		int N;
		int i;
		scanf("%d",&N);
		for (i=0;i<N;i++)
		{
			scanf("%s %d %d",stu[i].name,&stu[i].test1,&stu[i].test2);
			stu[i].test3=stu[i].test1+stu[i].test2;
		}
		int flag;
		for (flag=1;flag<N;flag++)
		{
			for (i=0;i<N-flag;i++)
			{
				if (stu[i].test3<stu[i+1].test3)
				{
					change=stu[i];
					stu[i]=stu[i+1];
					stu[i+1]=change;
				}
			}
		}
		for (i=0;i<N;i++)
		{
			printf("%s\n",stu[i].name);
		}
	}
	return 0;
}