1194: 总成绩排序(结构体专题)

时间限制: 1 Sec  内存限制: 128 MB
提交: 136  解决: 155
[提交] [状态] [讨论版] [命题人:eilene]

题目描述

有一学生成绩表,包括学号、姓名、3门课程成绩。请按如下规则排序:按总成绩降序排序;若总成绩相同,则按姓名升序排序;若姓名相同,则按学号升序排序。

输入

首先输入一个整数n(1<=n<=100),表示学生人数; 
然后输入n行,每行包含一个学生的信息:学号(12位)、姓名(不含空格且不超过20位),以及3个整数,表示3门课成绩,数据之间用空格隔开。

输出

输出排序后的成绩单,格式见输出样例。

样例输入 Copy

3
541207010188 Zhangling 89 78 95
541207010189 Wangli 85 87 99
541207010190 Fangfang 89 88 85

样例输出 Copy

541207010189 Wangli 85 87 99 271
541207010190 Fangfang 89 88 85 262
541207010188 Zhangling 89 78 95 262
#include <stdio.h>
#include<string.h>
typedef struct student{char number[13];char name[21];int a[4];int sum;
}Student;int main()
{int n;Student stu[100]={0};scanf("%d",&n);getchar();int i;for(i=0;i<n;i++){scanf("%s %s %d %d %d",stu[i].number,stu[i].name,&stu[i].a[1],&stu[i].a[2],&stu[i].a[3]);stu[i].sum=stu[i].a[1]+stu[i].a[2]+stu[i].a[3];getchar();}Student temp;int j,k;for(j=0;j<n-1;j++){for(k=j+1;k<n;k++){if(stu[j].sum<stu[k].sum){temp=stu[j];stu[j]=stu[k];stu[k]=temp;}}}for(j=0;j<n-1;j++){for(k=j+1;k<n;k++){if(stu[j].sum==stu[k].sum){if(strcmp(stu[j].name,stu[k].name)>0){temp=stu[j];stu[j]=stu[k];stu[k]=temp;}}}}for(j=0;j<n-1;j++){for(k=j+1;k<n;k++){if(stu[j].sum==stu[k].sum&&strcmp(stu[j].name,stu[k].name)==0){if(strcmp(stu[j].number,stu[k].number)>0){temp=stu[j];stu[j]=stu[k];stu[k]=temp;}}}}for(i=0;i<n;i++){printf("%s %s %d %d %d %d\n",stu[i].number,stu[i].name,stu[i].a[1],stu[i].a[2],stu[i].a[3],stu[i].sum);}return 0;
}

1194: 总成绩排序(结构体专题)相关推荐

  1. ZZULIOJ1194: 总成绩排序(结构体专题)

    1194: 总成绩排序(结构体专题) 题目描述: 有一学生成绩表,包括学号.姓名.3门课程成绩.请按如下规则排序:按总成绩降序排序,若总成绩相同,则按姓名升序排序. 输入: 首先输入一个整数n(1&l ...

  2. 1183: 平面点排序(一)(结构体专题)C语言

    1183: 平面点排序(一)(结构体专题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 6339 解决: 4077 [状态] [讨论版] [提交] [命题人:admin] 题目描述 平面 ...

  3. ZZULI-1184 平面点排序(二)(结构体专题)

    1184: 平面点排序(二)(结构体专题) Time Limit: 1 Sec   Memory Limit: 128 MB Submit: 1291   Solved: 630 Submit Sta ...

  4. ZZULIOJ 1180-1198结构体专题 参考代码

    一共19道题 虽然是java写的,但是还是用的类似于C的结构体 下面代码供参考 每题前面标的有题号 *1180 成绩统计(结构体专题) 1181 谁的年龄最小(结构体专题) 1182 查询记录(结构体 ...

  5. 考试排名(结构体专题)

    考试排名(结构体专题) 题目描述 今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总成绩.现给定录取分数线,请你写程序找出最后通过分数线的考生,并将他们的 ...

  6. 1197: 考试排名(一)(结构体专题)

    1197: 考试排名(一)(结构体专题) 时间限制: 1 Sec  内存限制: 128 MB 提交: 59  解决: 70 [提交] [状态] [讨论版] [命题人:eilene] 题目描述 今天浙大 ...

  7. 考试排名(一)(结构体专题)

    考试排名(一)(结构体专题) 题目描述 今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总成绩.现给定录取分数线,请你写程序找出最后通过分数线的考生,并将 ...

  8. 1481: 考试排名(一)(结构体专题)

    1481: 考试排名(一)(结构体专题) 1.描述 今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总成绩.现给定录取分数线,请你写程序找出最后通过分数线 ...

  9. 问题 C: 考试排名(一)(结构体专题)

    问题 C: 考试排名(一)(结构体专题) 时间限制: 1 Sec  内存限制: 128 MB 题目描述 今天浙大研究生复试的上机考试跟传统笔试的打分规则相似,总共有n道题,每道题有对应分值,最后计算总 ...

  10. ZZULIOJ: 1187: 棒棒糖(结构体专题)

    1187: 棒棒糖(结构体专题) 时间限制: 1 Sec 内存限制: 128 MB 提交: 1006 解决: 790 [提交] [状态] [讨论版] [命题人:外部导入] 题目描述 新年快到了,计算机 ...

最新文章

  1. 谷歌推出情境感知API
  2. 实现MySQL数据库的基本操作(增删改查)
  3. 公需科目必须学吗_税务师要继续教育吗,2019税务师怎样继续教育?
  4. 2021年6月3日,SAP 全球蓝宝石大会将在线上盛大启幕
  5. 如果您是JavaScript开发人员,为什么要进行增强现实-以及如何开始
  6. lol1.7更新服务器维护,lol今天停机维护到几点11日7.1版本停机更新公告
  7. 如何获取查询生成器以字符串形式输出其原始SQL查询?
  8. Python入门--函数的参数总结
  9. 汇编语言实模式到保护模式的思考
  10. (转)以C++为核心语言的高频交易系统的讨论?
  11. Web服务器常见HTTP错误码
  12. 使用usb to ttl串口下载器破解移动电视盒子(CM201-2)
  13. OMNeT学习之TicToc2-7详解
  14. springboot 连接并操作redis 完全可用的
  15. 打开Skype的时候提醒:TOM-Skype 已经停止工作,这是什么意思? 重装了一遍还是不能用。...
  16. 徕卡相机为什么卖得贵?对比佳能、尼康有什么不同
  17. 《Java Web程序设计基础教程》简介
  18. DNA与剑桥的老鹰酒吧
  19. 生化危机4(来生/恶灵古堡IV)DVD/700M发布
  20. 图片文字修改用什么软件?3个简单实用软件推荐

热门文章

  1. 2021 ICCV TIMI-Net 抠图网络论文笔记
  2. en结尾的单词_239个以en开头结尾的常用英语单词
  3. 重访命令征服泰伯利亚太阳
  4. 基于mysql的报表工具有哪些?值得推荐的mysql报表工具
  5. ElasticSearch学习笔记十七 文档更新及版本控制
  6. java学习-veu
  7. raise notice oracle,openGauss 循序渐进:通过 raise notice 模拟 Oracle 的 DBMS_OUTPUT
  8. 五种线粒体呼吸链复合体研究工具
  9. MitoZ|动物线粒体基因组组装注释软件
  10. tkinter教学(五)tkinter内置变量类别 set,get用法