结构体的排序,自己写一个 sort 函数的比较算法就好了。
#include<bits/stdc++.h> using namespace std; struct student{ string name; int age; int score; }; typedef struct student stu; bool cmp(stu &a,stu &b){//这里注意 cmp 函数书写的严格弱序规则! if(a.score!=b.score){ return a.score<b.score; } else if(a.name.compare(b.name)!=0){ return a.name<b.name; } else{ return a.age<b.age; } } int main(){ int n; while(cin>>n){ stu a[n]; for(int i=0;i<n;i++){ cin >> a[i].name >> a[i].age >> a[i].score; } sort(a,a+n,cmp); for(int i=0;i<n;i++){ cout << a[i].name << " " << a[i].age << " " << a[i].score << endl; } } return 0; }
0.0分
0 人评分
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C语言代码) 如果a<0,那就不是这个代码了,哈哈哈哈浏览:1306 |
输出九九乘法表 (C语言代码)浏览:582 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:701 |
高精度加法 (C++代码)(大数加法)浏览:1008 |
时间转换 (Java代码)浏览:618 |
简单的a+b (C++语言代码)浏览:895 |
WU-图形输出 (C++代码)浏览:836 |
简单的a+b (C语言代码)浏览:560 |
简单的a+b (C语言代码)浏览:626 |
C语言程序设计教程(第三版)课后习题9.3 (C语言代码)浏览:750 |