Result: Accepted
Time: 13ms
Memory: 1092kB
#include<stdio.h>
#define ARRAY_AIZE 100
struct student
{
char name[20];
double lilun,shijian;
double sum;
};
int main (void)
{
struct student studentArray[ARRAY_AIZE];
struct student maxSum;
int i,n,t,k,q,j,p;
char pp;
scanf("%d",&t);
for(j=1;j<=t;j++)
{
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s %lf %lf",studentArray[i].name,&studentArray[i].lilun,&studentArray[i].shijian);
studentArray[i].sum=studentArray[i].lilun+studentArray[i].shijian;
}
for(q=1;q<n;++q)
{
for(k=0;k<n-q;++k)
{
if(studentArray[k].sum>studentArray[k+1].sum)
{
maxSum=studentArray[k];
studentArray[k]=studentArray[k+1];
studentArray[k+1]=maxSum;
}
}
}
for(p=n-1;p>=0;p--)
{
printf("%s\n",studentArray[p].name);
}
}
return 0;
}