uq_66679499795


私信TA

用户名:uq_66679499795

访问量:1455

签 名:

等  级
排  名 2071
经  验 2475
参赛次数 10
文章发表 24
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

#include<iostream>

#include<algorithm>

#include<cstring>

using namespace std;


struct Stu

{

int m;   //数学 

int c;   //语文 

int e;   //英语 

int sum; //总分 

int id;  //学号 

}a[310];


bool cmp(Stu a,Stu b)         //排序规则

{

if(a.sum!=b.sum)             //总分不同时

return a.sum>b.sum;

else if(a.c!=b.c)               //总分相同,语文成绩不同时

return a.c>b.c;

else                                //总分相同,语文成绩相同,学号不同时

return a.id<b.id; 


int n;


int main()

{

cin >> n;

for(int i=1;i<=n;i++)

{

cin >> a[i].c >> a[i].m >> a[i].e;

a[i].sum=a[i].c+a[i].e+a[i].m;     //总分

a[i].id=i;                                     //学号

}

sort(a+1,a+n+1,cmp);              //排序

for(int i=1;i<=5;i++)

{

cout << a[i].id << " " << a[i].sum << endl;

}

return 0;


 

0.0分

2 人评分

  评论区

  • «
  • »