问题描述
1、 可以存储学生的姓名、学号、性别和 A、B、C 三
门课程的成绩;
2、 能够对所有学生的姓名、学号、性别和三门课程的成绩进
行显示;
3、 能够根据学生三门课程的总成绩对学生的记录进行排序并
输出;
4、 能够输出每位有不及格课程的学生的学号、姓名和不及格
课程的名字和成绩;
问题分析
输入:
用户输入要录入的学生人数
用户输入要录入的学生信息(姓名、学号、性别和A、B、C课程成绩)
用户选择相应功能的输入
输出:
输出所有学生的所有信息
输出按三门课程总成绩降序排序后的所有学生的所有信息
输出每位有不及格课程的学生的学号、姓名和不及格课程的名字和成绩;
主要处理过程:
根据用户输入建立链表存储学生信息
按照三门课程总成绩降序排序并输出排序后的结果
判断每名学生是否有课程不及格并输出判断结果为true的 学生的学号、姓名和不及格课程的名字和成绩
流程设计
模块介绍
链表创建模块:
采用尾插发创建单向链表封装成函数
creatLink需要传入节点个数n,返回有n个 节点的链表的头指针,完成存储结构的创建
排序模块:
封装成函数lowerOrder
需要传入链表的头指针,对该链表进行降序排序 后,调用输出函数getMessage输出排序后的所有 学生信息
输出模块:
封装成函数getMessage
需要传入链表的头指针,输出该链表所有节点的 出指针域外的所有信息
输出不及格学生模块:
封装成函数failStuMessage
需要传入学生信息链表的头指针, 输出不及格学生的学号,姓名和不 及格课程的名字、成绩
源代码
1 | #include <iostream> |
功能测试
Feature A:
Feature B:
Feature C:
Feature D: