Result: Accepted
Time: 4ms
Memory: 1120kB
#include<stdio.h>
#include<stdlib.h>
#define ARRAY_SIZE 102
struct student{
char name[21];
double score;
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];
int t;
scanf("%d",&t);
while(t--)
{
int i,n;
scanf("%d",&n);
for (i=0; i<n; i++ )
{
scanf("%s %lf",studentArray[i].name,&studentArray[i].score );
studentArray[i].total = studentArray[i].score ;
}
qsort(studentArray,n,sizeof(struct student),comp);
for ( i=0; i<n; i++)
{
printf("%s\n",studentArray[i].name);
}
}
return 0;
}