• 利用sort对结构体进行排序


    我定义了一个学生类型的结构体来演示sort排序对结构体排序的用法

    具体用法看代码

    #include<iostream>
    #include<string>
    #include<algorithm>//sort函数包含的头文件
    using namespace std;
    //定义一个学生类型的结构体
    typedef struct student
    {
        string name;           //学生姓名
        int achievement;     //学生成绩
    } student;
    
    
    //这是函数是sort函数的第三个参数
    //如果希望升序排序,就是"<",降序排列就是">"号
    //如果希望用其他的参数作为排序条件,只需要把相应的条件改一下(如果改成name),这样结构体就以name作为排序标准
    bool comparison(student a,student b){
        return a.achievement<b.achievement;
    }
    
    
    
    //用来显示学生信息的函数
    void show(student *stu,int n)
    {
        for(int i = 0; i < n; i++)
        {
            cout<<"姓名:"<<stu[i].name<<'	'<<"成绩:"<<stu[i].achievement<<endl;
        }
    }
    
    int main()
    {
        student stu[] = { {"张三",99},{"李四",87},{"王二",100} ,{"麻子",60}};
        cout<<"排序前:"<<endl;
        show(stu,4);
        sort(stu,stu+4,comparison);
        cout<<"排序后:"<<endl;
        show(stu,4);
        return 0;
    }
    
  • 相关阅读:
    = =写个prim希望能够巨巨们看的懂
    poj2389 普通的大数乘法
    Codeforces 378C
    hdoj1272 小希的迷宫
    hihoCoder搜索二·骑士问题
    hihoCoder扩展欧几里得
    hihoCoder 1032
    664A
    【水水水】678A
    Codeforces Round #357 (Div. 2)C. Heap Operations
  • 原文地址:https://www.cnblogs.com/didiaodidiao/p/9387881.html
Copyright © 2020-2023  润新知