描述 在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩.关于输入 第一行有

问题描述:

描述
在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第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
#include
#define M 105
int main(){
int hao[M],i,j;
double fen[M];
int n,k;
scanf("%d %d",&n,&k);
for(i=0;i
1个回答 分类:综合 2014-10-16

问题解答:

我来补答
/>#include<stdio.h>
#define M 105
int main(){
    int hao[M],i,j;
    double fen[M];
    int n,k;
    scanf("%d %d",&n,&k);
    for(i=0;i<n;i++){
        //scanf("%d %g",&hao[i],&fen[i]);
scanf("%d %lf",&hao[i],&fen[i]);
    }
    for(i=0;i<n-1;i++){
        for(j=i+1;j<n;j++){
            double tmp;
int num;
            if(fen[i]>fen[j]){
tmp=fen[i];
fen[i]=fen[j];
fen[j]=tmp;
num=hao[i];
hao[i]=hao[j];
                hao[j]=num;
}
        }
    }
    printf("%d %lf\n",hao[n-k],fen[n-k]);
    return 0;
}
 
 
展开全文阅读
剩余:2000