信息学奥赛一本通(1178:成绩排序)——选择排序
1178:成绩排序
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 29458 通过数: 11916
【题目描述】
给出班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前。
【输入】
第一行为n (0 < n < 20),表示班里的学生数目;
接下来的n行,每行为每个学生的名字和他的成绩, 中间用单个空格隔开。名字只包含字母且长度不超过20,成绩为一个不大于100的非负整数。
【输出】
把成绩单按分数从高到低的顺序进行排序并输出,每行包含名字和分数两项,之间有一个空格。
【输入样例】
4
Kitty 80
Hanmeimei 90
Joey 92
Tim 28
【输出样例】
Joey 92
Hanmeimei 90
Kitty 80
Tim 28
【参考代码】
#include <stdio.h>
#define N 25
struct node
{
char s[N];
int score;
}stu[N],t;
void chssort(struct node x[],int n)
{
int i,j,p;
for(i=0;i<n-1;i++)
{
p=i;
for(j=i+1;j<n;j++)
{
if(x[j].score > x[p].score)
{
p=j;
}
else if(stu[p].score == stu[j].score && strcmp(stu[p].s,stu[j].s)>0)
{
p=j;
}
}
if(p!=i)
{
t=stu[p];
stu[p]=stu[i];
stu[i]=t;
}
}
}
int main()
{
int i,n;
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%s %d",&stu[i].s,&stu[i].score);
chssort(stu,n);
for(i=0;i<n;i++)
printf("%s %d\n",stu[i].s,stu[i].score);
return 0;
}
http://ybt.ssoier.cn:8088/problem_show.php?pid=1178
信息学奥赛一本通(1178:成绩排序)——选择排序相关推荐
- 信息学奥赛一本通 1181:整数奇偶排序 | OpenJudge NOI 1.10 06:整数奇偶排序
[题目链接] ybt 1181:整数奇偶排序 OpenJudge NOI 1.10 06:整数奇偶排序 [题目考点] 1. 排序 [君义精讲]排序算法 [解题思路] 解法1:将奇数和偶数分开,分别排序 ...
- 信息学奥赛一本通 1178:成绩排序 | OpenJudge NOI 1.10 03:成绩排序
[题目链接] ybt 1178:成绩排序 OpenJudge NOI 1.10 03:成绩排序 [题目考点] 1. 结构体 排序 [君义精讲]排序算法 2. 多关键字排序 方法1:将多关键字的排序条件 ...
- 信息学奥赛一本通1178题——成绩排序
[题目描述] 给出班里某门课程的成绩单,请你按成绩从高到低对成绩单排序输出,如果有相同分数则名字字典序小的在前. [输入] 第一行为n (0 < n < 20),表示班里的学生数目: 接下 ...
- 信息学奥赛一本通(1185:单词排序)
1185:单词排序 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 11964 通过数: 6009 [题目描述] 输入一行单词序列,相邻单词之间由1个或多个 ...
- 信息学奥赛一本通C++语言-----2048:【例5.18】串排序
[题目描述] 对给定的n(1≤n≤20)n(1≤n≤20)个国家名(国家名字长度不超过2020),按其字母的顺序输出. [输入] 第一行为国家的个数nn: 以下nn行为国家的名字. [输出] nn行, ...
- 信息学奥赛一本通(基础算法与数据结构-题解汇总目录)
信息学奥赛一本通(C++版)在线评测系统 基础(二)基础算法 更新中...... 第一章高精度计算 1307[例1.3]高精度乘法 1308[例1.5]高精除 1309[例1.6]回文数(Noip ...
- 信息学奥赛一本通在线提交地址
信息学奥赛一本通 1 C++语言入门 1.1 综合 1.1.1 P1458 地球人口承载力估计 正确: 770 提交: 1794 比率: 42.92 % 1.1.2 P1686 Hello, Worl ...
- 信息学奥赛一本通 (C++)上机练习
信息学奥赛一本通(C++)上机练习 此书为娃儿的第一本刷题书.娃儿现在四年级 ,希望他能坚持下来.特开贴加油 luogu: disangan223 第一部分 C++语言 第一章 C++语言入门 T10 ...
- 信息学奥赛一本通(C++版) 网站补充题目
总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 网站补充题目 http://ybt.ssoier ...
- 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划
总目录详见:https://blog.csdn.net/mrcrack/article/details/86501716 信息学奥赛一本通(C++版) 第二部分 基础算法 第九章 动态规划 第一节 动 ...
最新文章
- HP c3000/c7000 blade switch GBE2c 初始配置
- [六]RabbitMQ-客户端源码之AMQCommand
- Spring事务总结(一) 内部调用事务失效、异常回滚
- FIR滤波器FPGA实现
- 给特定的模拟器/设备实例发送命令
- mysql5.7.22并行回放_技术分享 | 从库 MTS 多线程并行回放(二)
- vector容器,容量和大小的操作
- php3.2项目怎么创建,php网站后台源码(thinkphp3.2.3开发微信编辑器创建后台)
- 2003卡在应用计算机设置,计算机操作与应用(Windows XP+Office 2003)
- 使用sql语句直接修改数据库密码的解决方案
- w10运行游戏计算机中丢失xinput1-3.dll,win10游戏缺少xinput1_3.dll如何修复_win10电脑找不到xinput1_3.dll怎么解决...
- 禁止从终端服务器复制文件
- 各类编程开发网址分享
- 关于码距、检错、纠错
- mysql group top_Mysql group by 后取 top N 问题
- 20200220MFC 之CListCtrl(二)
- 服务机器人常用的定位导航技术及优缺点分析
- 秉火stm32f429移植u-boot
- jmeter压测生成报告
- Linux——进程、任务和线程
热门文章
- JavaScript实现继承机制(3)——通过原型链(prototype chaining)方式
- GNU make manual 翻译( 一百五十五)
- JavaEE实战班第八天
- 人工智能、机器学习、深度学习的关系,终于有人讲明白了
- java读取mxl_Dom4j 读取一个XML文件和将String写成XML文件 | 学步园
- creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器
- 国内开源项目无法形成气候且难以持续性的问题分析
- 如何打造一个搞垮公司的产品?
- 牛逼!简单的代码提交能玩出这么多花样
- SQL:我为什么慢你心里没数吗?