成绩排序 九度OJ第2题

题目:
实现代码:
#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std;
struct E{char name[101];int age;int score;
}buf[1000];
bool cmp(E a,E b){//实现比较规则 if (a.score!=b.score) return a.score<b.score;int tmp=strcmp(a.name,b.name);if(tmp!=0) return tmp<0;else return a.age<b.age;
}
int main()
{int n;while(scanf("%d",&n)!=EOF){for(int i=0;i<n;i++){//输入数据 scanf("%s%d%d",buf[i].name,&buf[i].age,&buf[i].score);}printf("\n");sort(buf,buf+n,cmp);//利用内置sort函数 for(int i=0;i<n;i++){//输出数据 printf("%s %d %d \n",buf[i].name,buf[i].age,buf[i].score);}printf("\n");} return 0;
}

输出结果:

3
abc 22 92
bcs 23 96
aaa 19 94abc 22 92
aaa 19 94
bcs 23 96

改进:通过指明小于运算符

实现代码:
#include <iostream>
#include <stdio.h>
#include <algorithm>
#include <string.h>
using namespace std;
struct E{char name[101];int age;int score;bool operator < (const E &b) const{//利用C++运算符重载直接定义小于运算符 if (score!=b.score) return score<b.score;int tmp=strcmp(name,b.name);if(tmp!=0) return tmp<0;else return age<b.age;
}
}buf[1000];
int main()
{int n;while(scanf("%d",&n)!=EOF){for(int i=0;i<n;i++){//输入数据 scanf("%s%d%d",buf[i].name,&buf[i].age,&buf[i].score);}printf("\n");sort(buf,buf+n);//利用内置sort函数 for(int i=0;i<n;i++){//输出数据 printf("%s %d %d \n",buf[i].name,buf[i].age,buf[i].score);}printf("\n");} return 0;
}

测试输出:

3
abv 22 88
cdr 23 98
abc 21 99abv 22 88
cdr 23 98
abc 21 99

成绩排序 九度OJ第2题相关推荐

  1. 成绩排序 九度教程c语言,九度OJ 1089 数字反转

    题目分析: 使用队列存放每一位的数字,然后输出并计算得到反转数值,从而实现数字反转. 源代码: [cpp] #include #include using namespace std; int mai ...

  2. Excel排序 九度教程第4题

    题目链接 题目描述: Excel可以对一组纪录按任意指定列排序.现请你编写程序实现类似功能. 对每个测试用例,首先输出1行"Case i:",其中 i 是测试用例的编号(从1开始) ...

  3. 九度oj 第1题 二维数组中的查找 何海涛:《剑指Offer:名企面试官精讲典型编程题》

    一.题目信息 题目描述: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数. 输入: ...

  4. Freckles - 九度 OJ 1144

    Freckles - 九度 OJ 1144 题目 时间限制:1 秒 内存限制:128 兆 特殊判题:否 题目描述: In an episode of the Dick Van Dyke show, l ...

  5. Leagal or Not - 九度 OJ 1448

    Leagal or Not - 九度 OJ 1448 题目 时间限制:1 秒 内存限制:128 兆 特殊判题:否 题目描述: ACM-DIY is a large QQ group where man ...

  6. 打不开磁盘配额linux,九度OJ 1455 珍惜现在,感恩生活 -- 动态规划(背包问题)...

    题目描述: 为了挽救灾区同胞的生命,心系灾区同胞的你准备自己采购一些粮食支援灾区,现在假设你一共有资金n元,而市场有m种大米,每种大米都是袋装产品,其价格不等,并且只能整袋购买.请问:你用有限的资金最 ...

  7. 非常可乐(九度 OJ 1457)

    非常可乐(九度 OJ 1457) 时间限制:1 秒 内存限制:32 兆 特殊判题:否 1.题目描述: 大家一定觉的运动以后喝可乐是一件很惬意的事情,但是 seeyou 却不这么认为.因为每次当 see ...

  8. 九度OJ 题目1179:阶乘

    /********************************* * 日期:2013-2-8 * 作者:SJF0115 * 题号: 九度OJ 题目1179:阶乘 * 来源:http://ac.jo ...

  9. 九度OJ——1028继续畅通工程

    题目描述: 省政府"畅通工程"的目标是使全省任何两个村庄间都可以实现公路交通(但不一定有直接的公路相连,只要能间接通过公路可达即可).现得到城镇道路统计表,表中列出了任意两城镇间修 ...

  10. 九度OJ 题目1069:查找学生信息 随笔

    ** 九度OJ 题目1069:查找学生信息 ** 题目描述如下: 输入N个学生的信息,然后进行查询. 输入 输入的第一行为N,即学生的个数(N<=1000) 接下来的N行包括N个学生的信息,信息 ...

最新文章

  1. Linux系统分析之启动流程
  2. Python基础06 循环
  3. Java中恒等条件判断:“equals”和“==”
  4. 黄聪:WordPress 启用HTTPS设置(转)
  5. mysql数据库事务有几种特性_面试官:你能说说事务的几个特性是啥?有哪几种隔离级别?...
  6. webservice学习总结(一)-- WebService相关概念介绍
  7. 英语一窍不通能学计算机吗,对英语一窍不通怎么学有什么好的方法
  8. Unity Application Block 发布
  9. 红黑树并没有我们想象的那么难(下)
  10. Spring Security简介和认识
  11. oracle 11g ocp 笔记(9)-- 使用sql 检索、过滤和排序数据
  12. Eclipse+Java+Swing实现学校教材管理系统
  13. k3 审核流程图_金蝶K3操作流程图详解(doc 64页)
  14. 【GAMES-202实时渲染】4、3D空间全局光照(RSM、LPV、VXGI)
  15. Android中可展开的列表组件(ExpandableListView)的使用
  16. 最新2022中国大学排名发布!
  17. ORA-22835:缓冲区对于CLOB到CHAR转换而言太小
  18. 兔子-蓝牙 bluetooth (四)OPP文件传输
  19. 抖音用计算机怎么表白,抖音表白代码
  20. 我们的时间去了哪里?

热门文章

  1. 闭环系统零、极点位置对时间响应性能指标的影响
  2. chr 13 java 替换_【转】ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)...
  3. 10本最热门科普书免费送!人工智能数学物理获奖经典佳作!
  4. docker里面什么emule比较好_emule 服务器优先
  5. 经典前端框架,一个时代的落幕:如何看待layui 官网将于 2021年10月13日 进行下线?
  6. Windows 7 64位版本的内存错误导致蓝屏死机(Blue Screen to Death)
  7. NLTK中使用Stanford parser 构建中文语法树
  8. Android Manifest配置文件中use-permission相关内容列表
  9. 深圳大学电信学院《C程序设计》期末大作业:《在二维封闭房间中的弹球模拟程序》
  10. 【大咖来了】---中国HBase技术社区MeetUp