1194: 总成绩排序(结构体专题)
来源:互联网 发布:淘宝店铺ppt 编辑:程序博客网 时间:2024/06/05 12:50
Description
有一学生成绩表,包括学号、姓名、3门课程成绩。请按如下规则排序:按总成绩降序排序,若总成绩相同,则按姓名升序排序。
Input
首先输入一个整数n(1<=n<=100),表示学生人数;
然后输入n行,每行包含一个学生的信息:学号(12位)、姓名(不含空格且不超过20位),以及3个整数,表示3门课成绩,数据之间用空格隔开。
Output
输出排序后的成绩单,格式见输出样例。
Sample Input
3541207010188 Zhangling 89 78 95541207010189 Wangli 85 87 99541207010190 Fangfang 89 88 85
Sample Output
541207010189 Wangli 85 87 99 271541207010190 Fangfang 89 88 85 262541207010188 Zhangling 89 78 95 262
HINT
Source
#include <stdio.h>#include <stdlib.h>#include<string.h>//包括学号、姓名、3门课程成绩typedef struct student{ char ID[13]; char name[25]; int score[3]; int sum;} STU;int main(){ int n; STU p[101],temp; scanf("%d",&n); int i,j; for(i=0; i<n; i++) { p[i].sum=0; scanf("%s", p[i].ID); scanf("%s", p[i].name); for(j=0; j<3; j++) { scanf("%d",&p[i].score[j]); p[i].sum+=p[i].score[j]; } } for(i=0; i<n; i++) { for(j=i+1; j<n; j++) { if( p[i].sum< p[j].sum) { temp=p[i]; p[i]=p[j]; p[j]=temp; } if( p[i].sum==p[j].sum) { if(strcmp(p[i].name, p[j].name)>0) { temp=p[i]; p[i]=p[j]; p[j]=temp; } } } } for(i=0;i<n;i++) { printf("%s %s",p[i].ID,p[i].name); for(j=0; j<3; j++) printf(" %d",p[i].score[j]); printf(" %d",p[i].sum); printf("\n"); } return 0;}
阅读全文
0 0
- ZZULI-1194: 总成绩排序(结构体专题)
- 1194: 总成绩排序(结构体专题)
- ZZULI-1193: 单科成绩排序(结构体专题)
- 1193: 单科成绩排序(结构体专题)
- 1478 Problem A总成绩排序(结构体专题)——软四课堂小测试2——2017-12-22
- 1180: 成绩统计(结构体专题)
- 成绩排序(结构体)
- 成绩排序(结构体三级排序)
- 总成绩排序
- 总成绩排序
- 九度OJ 1061 成绩排序(结构体排序)
- 结构体数组排序 (学生信息 按成绩排序 )
- 成绩排序 (结构体+自定义排序)
- Unite2--problem1 结构体计成绩总均
- 平面点排序(一)(结构体专题)
- 1183: 平面点排序(一)(结构体专题)
- 1183: 平面点排序(一)(结构体专题)
- 1184: 平面点排序(二)(结构体专题)
- 详述 PO VO BO DTO DAO 和 POJO 的概念及区别
- 从零开始的RxJava之旅(4)---- RxJava2总结
- 第六节总结
- 处理图片的缩放、旋转、裁剪和翻转这四种效果
- 腾讯云视频上传问题总结
- 1194: 总成绩排序(结构体专题)
- 我理解的java设计模式之单例模式
- Android studio 开发中怎样制作.9.png的图片
- 循环层
- 记2017年上交软院优才夏令营
- Docker 搭建开发环境
- Win7快捷键17
- 织梦(dedecms)后台删除文章后台还有分页显示解决方法
- Spring Boot Admin