1、 C C 语言课程设计语言课程设计 专 业: 班 级: 学 号: 姓 名: 日 期: C 语言课程设计(报告) 2011 - 1 - 链表基本综合操作(简单学生管理系统)链表基本综合操作(简单学生管理系统) 1. 系统需求分析 在日常生活中,学生管理系统系统的应用无处不在。学生成绩管理系统是对学生基本信息及成绩的 管理。本程序是综合利用链表的基础知识来编写一个简单的学生管理系统,功能包括建立、显示、查询、 删除以及退出功能。 学生管理系统首先需要通过函数建立储存学生信息的链表,其中学生信息包括学号、姓名、成绩, 这就需要建立包括上述信息的结构体。当然只建立储存学生信息的链表是不够的,因此需要一
2、个输出函 数来把链表里储存的学生信息按照一定的格式显示出来。本系统还要求输入一个学号即可检索出该学生 的有关信息并且检索用函数实现,故该系统需要编写查找学生信息的子函数。系统要求从链表中删除成 绩低于 50 分的学生并且删除节点用函数实现,所以该系统又需编写删除子函数。 2. 系统总体设计 2.1 功能模块设计功能模块设计 该系统根据需求共设有四个模块,即创建学生信息模块、显示学生信息模块、删除低于 50 分的学生 的学生信息模块和查询学生信息模块。该系统具体模块关系如下图所示: 输入学生信息模块主要是将用户根据提示输入的学生信息储存在建立的链表之中,是最主要的子函 数。 显示学生信息模块是将
3、通过输入学生信息模块输入链表中的学生信息在系统界面中显示出来。 查询学生信息模块是将通过输入学生信息模块输入链表中的学生信息在用户输入所要查询的学生学 号后将相应的学生信息显示在系统界面中。 删除学生信息模块是将通过输入学生信息模块输入链表中的学生信息中成绩低于50 分的学生信息在 链表中删除并且提示用户删除完毕。 简单学生管理系统 输 入 学 生 信 息 显 示 学 生 信 息 查 询 学 生 信 息 删 除 学 生 信 息 C 语言课程设计(报告) 2011 - 2 - 2.2 程序处理流程程序处理流程 该系统的程序处理是通过主函数调用子函数来实现的。主函数中通过 switch-case
4、来调用子函数, 具体如下: Case1 : 调用输入学生信息模块,来完成链表的建立进而完成学生信息的输入。 Case2 : 调用显示学生信息模块,来完成学生信息在系统界面中的显示。 Case3 : 调用查询学生信息模块,来完成用户查询学生信息的功能。 Case4 : 调用删除学生信息模块,来完成用户删除成绩低于 50 分的学生的学生信息的需求。 Case5 : 退出系统。 模块之间的接口,即模块之间传递的信息如下: 1)创建链表的子函数:NODE *Creat(int n) 函数入口的参数为用户在主函数中输入的所有的学生人数,函数返回值为 NODE 类型的指针。 2)显示学生信息的子函数:void Out(NODE *head) 函数入口的参数为 1)中返回的 NODE 类型的指针,该函数无返回值。 3)查询学生信息的子函数:void Search(NODE *head, long num) 函数入口的