信息学奥赛一本通T1176:数据排序 谁考了第k名

【题目描述】在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩。【输入】其后有n行数据,每行包括一个学号(整数)和一个成绩(浮点数),中间用一个空格分隔。【输出】输出第k名学生的学号和成绩,中间用空格分隔。(注:请用%g输出成绩)【输入样例】5 3【输出样例】90788004 68.4【源程序】 

信息学奥赛一本通T1176:谁考了第k名

【题目描述】

在一次考试中,每个学生的成绩都不相同,现知道了每个学生的学号和成绩,求考第k名学生的学号和成绩。

【输入】

其后有n行数据,每行包括一个学号(整数)和一个成绩(浮点数),中间用一个空格分隔。

【输出】

输出第k名学生的学号和成绩,中间用空格分隔。(注:请用%g输出成绩)

【输入样例】

5 3
90788001 67.8
90788002 90.3
90788003 61
90788004 68.4
90788005 73.9

【输出样例】

90788004 68.4

【源程序】

#include<iostream>
using namespace std;
struct node{
    int id;
    double score;
}stu[110],temp;
int main()
{
    int n,k;
    int i,j;

    cin>>n>>k;
    for(i=1;i<=n;i++)
        cin>>stu[i].id>>stu[i].score;

    for(i=1;i<=n;i++)
        for(j=i+1;j<=n;j++)
            if(stu[i].score<stu[j].score)
            {
                temp=stu[i];
                stu[i]=stu[j];
                stu[j]=temp;
            }

    cout<<stu[k].id<<" "<<stu[k].score;
    return 0;
}

 

信息学奥赛一本通T1176:数据排序 谁考了第k名 归属于 数据排序,更多同类题解源程序见:数据排序 和 谁考了第k名

0 条评论

请先 登录 后评论
不写代码的码农
轩爸

0 篇文章

作家榜 »

  1. admin 2 文章
  2. 张芳 0 文章
  3. hanna 0 文章
  4. Jason 0 文章
  5. lixiaioqian 0 文章
  6. GeraldWrora 0 文章
  7. 董伟 0 文章
  8. 信奥达人 0 文章