这个程序将包括以下功能:
添加学生成绩(学号、姓名、各科成绩)
计算每个学生的总分和平均分
计算班级单科平均分、最高分、最低分
按总分或单科成绩排序
查询学生成绩
显示所有学生成绩
将成绩保存到文件
从文件加载成绩
我们将使用面向对象的方法
设计Student类,包含学号、姓名、成绩字典(科目-分数)
设计GradeManager类,管理多个学生,并实现上述功能。
注意:我们假设科目是固定的,可以在添加第一个学生时确定,但为了灵活,我们允许每次添加学生时科目可以不同(但后续统计需要一致,所以我们会在添加时检查或统一科目)。
为了简化,我们不在程序中固定科目,而是在添加第一个学生时确定科目,后续添加的学生必须使用相同的科目(如果科目不同,则提示错误或自动补充缺失科目为0分,这里我们选择自动补充缺失科目为0分)。
我们将实现以下方法:
添加学生
删除学生
查询学生
计算每个学生的总分和平均分
计算班级单科平均分、最高分、最低分
按总分排序
按单科成绩排序
显示所有学生
保存到文件
从文件加载