成绩排序 华中科技大学考研机试题(自定义比较函数)

题目描述:

思路:用结构体来存储学生信息,自定义一下比较函数重载<,然后直接用sort来排序就可

上代码:

#include<bits/stdc++.h>
using namespace std;
const int N=1010;
int n;
struct student{
    string name;
    int age,grd;
    bool operator< (const student& t)const{
        if(grd!=t.grd)return grd<t.grd;
        if(name!=t.name)return name<t.name;
        return age<t.age;
    }
}q[N];
int main(){
    cin>>n;
    for(int i=0;i<n;++i)
        cin>>q[i].name>>q[i].age>>q[i].grd;
    sort(q,q+n);
    for(int i=0;i<n;++i)
        cout<<q[i].name<<' '<<q[i].age<<' '<<q[i].grd<<endl;
    return 0;
}

 

posted on 2022-08-02 22:09  jessamineyy  阅读(45)  评论(0)    收藏  举报

导航