程序设计实训第一次作业---第二题、数组与排序A

这是一道程序设计题目,要求读取不超过9个学生的信息,包括学号、姓名和三科成绩,计算平均成绩并按总分降序排序。若总分相同,按学号升序排列。输入输出格式有特定要求。程序需要处理输入大于9的情况,并展示正确排序后的学生信息。
摘要由CSDN通过智能技术生成

【问题描述】
从标准输入连续读入n(n<10)个学生的学号(不超过int类型表示范围)、姓名(由不超过10个英文字母组成)以及数学、英语、语文三门课的成绩,计算个人的平均成绩,并且按个人的总成绩由高到低排序(如果总成绩相同,按学号由低到高排序,但前面的排序序号不变,即两人排名相同),将排名结果在屏幕上显示出来(要求同一列右对齐,其中排名占4个字符、学号占10个字符,姓名占10个字符,数学、英语、语文各占5个字符)。如输入的学生人数n大于等于10,则打印输出“Please input 1-9.“, 然后,退出程序。
【输入形式】
从控制台输入一个小于10的正整数,表示学生人数;然后分行输入学号、姓名以及数学、英语、语文三门课的成绩,中间用空格分隔。
【输出形式】
1、控制台输出排序结果,要求输出:排名结果、学号、姓名、数学成绩、英语成绩、语文成绩。
2、要求同一列右对齐,其中排名占4个字符、学号占10个字符,姓名占10个字符,数学、英语、语文各占5个字符。
3、如两人成绩相同,总成绩相同,按学号由低到高排序输出,但前面的排序序号不变,即两人排名相同。
【样例输入1】
8
39060415 zf 98 88 85
39060427 lzw 87 92 88
39060413 wr 95 86 90
39060412 wp 95 85 91
39060405 syj 78 82 69
39060425 yef 85 78 93
39060419 sw 75 89 88
39060421 rr 89 88 75

【样例输出1】
1 39060412 wp 95 85 91
1 39060413 wr 95 86 90
1 39060415 zf 98 88 85
4 39060427 lzw 87 92 88
5 39060425 yef 85 78 93
6 39060419 sw 75 89 88
6 39060421 rr 89 88 75
8 39060405 syj 78 82 69

【样例输入2】
10
【样例输出2】
Please input 1-9.

【样例说明】
相同分数,相同排名的原则。在样例1中:“1 39060412 wp 95 85 91”、“1 39060413 wr 95 86 90”、“1 39060415 z

  • 4
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值