【 题目描述 】

有N个学生的数据,将学生数据按成绩由低到高排序,如果成绩相同则按姓名字符的字母序(A-Z,a-z)排序,如果姓名的字母序也相同则按照学生的年龄排序(由小到大排序),并输出N个学生排序后的信息。(提示,存在多组信息输入输出)

【 输入 】

测试数据有多组,每组输入第一行有一个整数N(N<=1000),接下来的N行包括N个学生的数据。
每个学生的数据包括姓名(长度不超过100的字符串)、年龄(整形数)、成绩(小于等于100的正数)。

【 输出 】

将学生信息按成绩进行排序,成绩相同的则按姓名的字母序进行排序。
然后输出学生信息,按照如下格式:
姓名 年龄 成绩

【 样例输入 】

3
zhao 19 90
qian 20 90
sun 19 100

【 样例输出 】

qian 20 90
zhao 19 90
sun 19 100

【提示】

"简单"的排序题,用C++的sort十分方便

满足某些人*代*的需求

这道题属实有亿点难,我也琢磨了好久sort排序的规则,后来才想起来strcmp......

#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
struct s{char name[101];int age;int score;
};
struct s student[1000];
bool y(s a, s b) {if(a.score!=b.score) return a.score<b.score;int flag=strcmp(a.name,b.name);if(flag==0) return a.age<b.age;elsereturn flag<0 ;
}
int main(){int n;while(cin>>n){for(int i=0;i<n;i++){cin>>student[i].name>>student[i].age>>student[i].score;}sort(student,student+n,y);for(int i=0;i<n;i++) {cout<<student[i].name<<" "<<student[i].age<<" "<<student[i].score<<endl;}}return 0;
}

成绩排序(一)c++相关推荐

  1. python【蓝桥杯vip练习题库】ADV-290成绩排序

    试题 算法提高 成绩排序 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给出n个学生的成绩,将这些学生按成绩排序, 排序规则,优先考虑数学成绩,高的在前:数学相同,英语高的在前:数 ...

  2. 成绩排序的c语言算法,成绩排序系统(练习排序算法和复习C语言)

    成绩排序系统(练习排序算法和复习C语言) 实验一 一.实验目的 1.回顾C语言中的输入.输出及结构体等相关知识点: 2.回顾函数的使用: 3.掌握插入排序.交换排序.选择排序中的常用排序的算法思想: ...

  3. PTA学生成绩排序-C语言详解

    7-72 学生成绩排序 (20分) 给出一组学生名单(姓名和成绩),请输出按成绩从大到小排序后的结果(名次和姓名).成绩相同的人拥有相同的名次,且按姓名的字典序从小到大排列.题目保证学生姓名没有重复. ...

  4. java 学生成绩排序

    编写一个应用程序,用户分别从两个文本框输入学术的姓名和分数,程序按成绩排序将这些学生的姓名和分数显示在一个文本区中. 程序运行效果如图: import java.awt.BorderLayout; i ...

  5. c语言用链表对学生成绩排序,学生成绩排序和平均分计算利用c语言链表的创建插入删除.doc...

    #define NULL 0 #define LEN sizeof(struct student) struct student { long num; float score; struct stu ...

  6. 1.10 编程基础之简单排序 03 成绩排序 3分 python

    http://noi.openjudge.cn/ch0110/03/ """ 1.10 编程基础之简单排序 03 成绩排序 3分 http://noi.openjudge ...

  7. 分别用Comparable和Comparator两个接口对下列四位同学的成绩做降序排序,如果成绩一样, 那在成绩排序的基础上按照年龄由小到大排序。 姓名(String

    代码 import java.util.*;/*3.分别用Comparable和Comparator两个接口对下列四位同学的成绩做降序排序,如果成绩一样,那在成绩排序的基础上按照年龄由小到大排序.姓名 ...

  8. 信息学奥赛一本通 1178:成绩排序 | OpenJudge NOI 1.10 03:成绩排序

    [题目链接] ybt 1178:成绩排序 OpenJudge NOI 1.10 03:成绩排序 [题目考点] 1. 结构体 排序 [君义精讲]排序算法 2. 多关键字排序 方法1:将多关键字的排序条件 ...

  9. 信息学奥赛一本通(1178:成绩排序)——选择排序

    1178:成绩排序 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 29458     通过数: 11916 [题目描述] 给出班里某门课程的成绩单,请你按成绩从高 ...

  10. java 蓝桥杯算法提高 成绩排序2

    试题 算法提高 成绩排序2 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 给出n个学生的成绩,将这些学生按成绩排序,排序规则:总分高的在前:总分相同,数学成绩高的在前:总分与数学相 ...

最新文章

  1. 互联网之父公开拍卖万维网源代码,3400万买下后发现居然有bug
  2. php base64处理
  3. linux内核杂记(11)-进程调度(6)
  4. java mongodb dbref_Spring DATA MongoDB @DBref查询,or和and联合查询
  5. 计算机课程学习小结,计算机课程学习心得5篇___.docx
  6. 怎样知道别人在蹭我家wifi?
  7. 字符串与整数、浮点数、无符号整数之间的转换常用函数
  8. 熊猫Pivot_table()– DataFrame数据分析
  9. Fourier分析基础(二)——由级数导出连续Fourier变换
  10. 找不到项目 该项不在计算机中,删除文件夹提示找不到该项目怎么删除?“找不到该项目”强删方法(图文)...
  11. python爬取豆瓣电影top250并保存为xlsx_批量抓取豆瓣电影TOP250数据
  12. SAR图像舰船目标检测介绍
  13. nmos导通流向_MOS管类型-MOS管4种类型与工作原理解析
  14. easyui获取图片路径_Easyui filebox(文件框)_EasyUI 插件
  15. 人民日报喊你学数学!实力不允许?8本书带你入门
  16. 怎样理解封装,继承,多态!三者的区别?
  17. 手机上的计算机黑屏怎么办,手机黑屏是怎么回事,详细教您苹果手机黑屏怎么办...
  18. 2017 云+未来峰会——上海站开发者专场即将开讲(30元电话充值卡等你拿)
  19. LVGL之学习篇(一)
  20. openGauss+KeepAlived(故障转移)

热门文章

  1. 3.3.9nbsp;艾利·高德拉特——TOC制…
  2. 常用的特效功能实现代码
  3. CKEditor/FCKEditor 使用-CKEditor(FCKeditor)精简版大全
  4. flex实现三栏布局
  5. 2021年美国大学生数学建模竞赛C题思路分析
  6. 1024 程序员节|用代码,改变世界
  7. QVTKWidget控件显示三维图片
  8. 修改Win10 C盘用户文件夹名称
  9. html5音频剪辑,访谈类音频剪辑的5个小贴士
  10. 万众瞩目之下,ANGULAR 2终于正式发布啦!