/*=====================================
谁考了第k名
总时间限制: 1000ms 内存限制: 65536kB
描述
在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩。
输入
第一行有两个整数,学生的人数n(1≤n≤100),和求第k名学生的k(1≤k≤n)。
其后有n行数据,每行包括一个学号(整数)和一个成绩(浮点数),中间用一个空格分隔。
输出
输出第k名学生的学号和成绩,中间用空格分隔。(注:请用%g输出成绩)
样例输入
5 3
90788001 67.8
90788002 90.3
90788003 61
90788004 68.4
90788005 73.9
样例输出
90788004 68.4
======================================*/
1 #include<stdio.h>
2 struct stu
3 {
4 int num;
5 double score;
6 };
7 int main()
8 {
9 int n,k,i,j,flag;
10 struct stu a[105],t;
11
12 scanf("%d%d",&n,&k);
13 for(i=0;i<n;i++)
14 {
15 scanf("%d%lf",&a[i].num,&a[i].score);
16 }
17
18 for(i=1;i<n;i++)
19 {
20 flag=1;
21 for(j=0;j<n-i;j++)
22 {
23 if(a[j].score<a[j+1].score)
24 {
25 flag=0;
26 t=a[j];
27 a[j]=a[j+1];
28 a[j+1]=t;
29 }
30 }
31 if(flag) break; //if(flag==1) break;
32 }
33 printf("%d %g\n",a[k-1].num,a[k-1].score);
34 return 0;
35 }