1004 成绩排名 (20 分)

Posted 组织两号头目

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1004 成绩排名 (20 分)相关的知识,希望对你有一定的参考价值。

读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。

输入格式:

每个测试输入包含 1 个测试用例,格式为

第 1 行:正整数 n
第 2 行:第 1 个学生的姓名 学号 成绩
第 3 行:第 2 个学生的姓名 学号 成绩
… … …
第 n+1 行:第 n 个学生的姓名 学号 成绩

其中姓名和学号均为不超过 10 个字符的字符串,成绩为 0 到 100 之间的一个整数,这里保证在一组测试用例中没有两个学生的成绩是相同的。

输出格式:

对每个测试用例输出 2 行,第 1 行是成绩最高学生的姓名和学号,第 2 行是成绩最低学生的姓名和学号,字符串间有 1 空格。

输入样例:

3
Joe Math990112 89
Mike CS991301 100
Mary EE990830 95

输出样例:

Mike CS991301
Joe Math990112

#include<iostream>
using namespace std;
#include<algorithm>
#include<string>
#define max 1000

class Student //学生类
{
    public:
    string Sname;
    string Sno;
    int Grade;
};
class Mycompare //仿函数
{
    public:
    bool operator()(Student& s1,Student& s2)
    {
        return s1.Grade<s2.Grade;//成绩升序
    }
};
int main()
{
    int n;
    cin>>n;
    Student stu[max],s;
    for(int i=0;i<n;i++)
    {
        cin>>s.Sname>>s.Sno>>s.Grade;
        stu[i]=s;
    }
    sort(stu,stu+n,Mycompare());//排序
    cout<<stu[n-1].Sname<<" "<<stu[n-1].Sno<<endl;
    cout<<stu[0].Sname<<" "<<stu[0].Sno<<endl;
    return 0;
}

在这里插入图片描述

以上是关于1004 成绩排名 (20 分)的主要内容,如果未能解决你的问题,请参考以下文章

1004 成绩排名 (20 分)

JAVA1004 成绩排名 (20分) PAT乙级 PAT (Basic Level) Practice(中文)

PATB1004 成绩排名(20 分)

1004 成绩排名 (20 分)

Java 1004 成绩排名 (20 分)

PAT乙级 1004 成绩排名 (20 分)