Logo HelloWorld信息学奥赛题库

少儿编程

时间限制:1 s 空间限制:128 MB

#13336. 学生成绩统计分析系统

Statistics

题目描述

请编写一个学生成绩统计分析程序,实现以下功能:
录入学生信息:通过键盘输入学生的学号、姓名和成绩,当输入的成绩为 -1时停止录入。
成绩排序:将学生按成绩从高到低排序,并输出排名(含学号、姓名、成绩)。
查找功能:支持按学号或姓名查找学生,并输出其详细信息。
统计分析:计算并输出班级平均分、最高分和最低分。若有多名学生同分,需全部列出。

输入格式

多次输入学生信息,每行包含三个数据:学号(整数)、姓名(字符串)、成绩(整数)。
当输入的成绩为 -1时,停止录入。

输出格式

成绩排名:按成绩降序输出所有学生的排名,格式为 名次. 姓名(学号:XXX)成绩:XXX。
查找结果:
按学号查找:输出 Name:XXX,Score:XXX或 not found。
按姓名查找:输出 ID:XXX,Score:XXX(若有多个同名学生,全部输出)。
统计报告:
Average:保留1位小数。
最高分:输出 Top:XXX(姓名1(ID:XXX) 姓名2(ID:XXX)...)。
最低分:输出 Bottom:XXX(姓名1(ID:XXX) 姓名2(ID:XXX)...)。

样例数据

input

1001 John 85
1002 Mike 92
1003 Tom 78
-1
1002
Mike

output

Results:
1.Mike(ID:1002)Score:92
2.John(ID:1001)Score:85
3.Tom(ID:1003)Score:78
Name:Mike,Score:92
ID:1002,Score:92
Average:85.0
Top:92(Mike(ID:1002))
Bottom:78(Tom(ID:1003))