编程语言语法考察:多关键字排序
c++ 中,自己写个比较函数,传入sort() 即可。
可以查看: https://blog.csdn.net/u014339447/article/details/109017759
//cpp
#include <iostream>
#include <algorithm>
using namespace std;
struct stu//考试成绩结构体
{
int id;
int yuwen;
int shuxue;
int yingyu;
int zongfen;
}s[310];
bool cmp(stu s1, stu s2)//比较函数
{
if(s1.zongfen != s2.zongfen)
return s1.zongfen > s2.zongfen;
else if(s1.yuwen != s2.yuwen)
return s1.yuwen > s2.yuwen;
else
return s1.id < s2.id;
}
int main()
{
int n;
cin >> n;
for(int i = 1; i <= n; i++)
{
s[i].id = i;
cin >> s[i].yuwen >> s[i].yingyu >> s[i].shuxue;
s[i].zongfen = s[i].yuwen + s[i].yingyu + s[i].shuxue;
}
sort(s+1,s + n + 1, cmp);
for(int i = 1; i <= 5; i++)
{
cout << s[i].id << " " << s[i].zongfen << endl;
}
}
觉得不错可以点个赞,有问题直接评论即可,
猛
大佬呀