解题思路:
注意事项:
参考代码:
#include<bits/stdc++.h> using namespace std; typedef struct Geade{ int id,y,s,e,sum; }S;//将结构体类型化为s。 bool cmp(S a,S b){ if(a.sum>b.sum) return true; else if(a.sum==b.sum&&b.y<a.y) return true;//代表不发生交换。 else return false;//代表要发生交换。 } int main(){ int n,y,m,e; S b[302]; cin>>n; for(int i=1;i<=n;i++) { b[i].id=i; cin>>b[i].y>>b[i].s>>b[i].e; b[i].sum=b[i].y+b[i].s+b[i].e; } sort(b+1,b+n+1,cmp);//注意此处我们开始比较的是下标为1开始的,结束是n+1,因为结束时只能取到n。 for(int i=1;i<=5;i++) cout<<b[i].id<<" "<<b[i].sum<<endl; return 0; }
0.0分
0 人评分
【回文数(二)】 (C++代码)浏览:932 |
P1001 (C语言代码)浏览:836 |
简单的a+b (C语言代码)浏览:674 |
WU-格式化数据输出 (C++代码)浏览:1312 |
C语言考试练习题_一元二次方程 (C语言代码)浏览:606 |
C语言程序设计教程(第三版)课后习题9.8 (C语言代码)浏览:646 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:727 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:566 |
整除问题 (C语言代码)浏览:594 |
C语言程序设计教程(第三版)课后习题1.6 (C语言代码)浏览:692 |