作业比赛编号 : 2497 - 十五班结构体练习(定义与排序)

结构体
#include<iostream>
#include<algorithm>
using namespace std;
    struct student {
    int id;
    int sum;
};

//核心函数
int cmp(student a,student b) {
    //如果成绩不同,成绩高排在前
    if(a.sum!=b.sum)
        return a.sum>b.sum; 
    //如果成绩相同,学号小的在前
    else
        return a.id<b.id;
}
int main() {
   int n;
   cin>>n;
   student stu[n+10];
   for (int i=0;i<n;i++) {
      cin>>stu[i].id>>stu[i].sum;
 }

   //对数据进行排序
   sort(stu,stu+n,cmp);
   for (int i=0;i<n;i++) {
      cout << stu[i].id<<" "<<stu[i].sum<<endl;
 }
   return 0;
}

比赛尚未开始或私有,不能查看题目。




返回上一页