#include<stdio.h>
#include<string.h>
#include<stdlib.h>
struct Student{
char ID[20];
float score;
};
int paixu(const void *a,const void *b)
{
struct Student *aa=(struct Student*)a;
struct Student *bb=(struct Student*)b;
return (aa->score)<bb->score;
}
int main()
{
struct Student a[100];
int i,n,k;
scanf("%d %d",&n,&k);
for(i=0;i<n;i++)
{
scanf("%s %f",&a[i].ID,&a[i].score);
}
//排序 由高到低
qsort(a,n,sizeof(a[0]),paixu);
// for(i=0;i<n;i++)
// {
// printf("%s %.1f",a[i].ID,a[i].score);
// }
printf("%s %g",a[k-1].ID,a[k-1].score);//%g 输入和输出的小数位相对应
return 0;
}
qsort的使用
void qsort(void *base, size_t nitems, size_t size, int (*compar)(const void *, const void*))
%g输出