问一题,求助
  • 板块灌水区
  • 楼主ly_沈海雯
  • 当前回复12
  • 已保存回复12
  • 发布时间2022/7/17 13:51
  • 上次更新2023/10/27 19:53:58
查看原帖
问一题,求助
571507
ly_沈海雯楼主2022/7/17 13:51

【排序】成绩排序

题目描述

给出n个学生的姓名和成绩,请将他们按照分数降序排列,如果分数相同,先列出的排在前面。

输入格式

第一行一个整数n 接下来n行,每行包含姓名和成绩

输出格式

n行,每行包含姓名和成绩

样例 #1


样例输入 #1

5
关云长 90
张翼德 91
赵子龙 98
马孟起 94
黄汉升 98

样例输出 #1

赵子龙 98
黄汉升 98
马孟起 94
张翼德 91
关云长 90

提示

0<n<100,名字长度<20,分数<100


只有90分,一直不过,团队作业没题解

求助

以下是我代码

#include<bits/stdc++.h>

#include

#include

using namespace std;

struct p{

string n;


int b;

}a[1100];

int main()

{ int m;

cin>>m;


for(int i=1;i<=m;{                  
	cin>>a[i].n>>a[i].b;  
}

for(int i=1;i<m;i++){

	int k=i;
	for(int j=i;j<=m;j++){
	if(a[j].b>a[k].b)k=j;
		

}

swap(a[i].n,a[k].n);

swap(a[i].b,a[k].b);

} for(int i=1;i<=m;i++){

	cout<<a[i].n<<' '<<a[i].b<<endl;
}
return 0;

}


格式不好,将就看

你们提意见,我改

2022/7/17 13:51
加载中...