欢迎来到天天文库
浏览记录
ID:57225155
大小:1006.00 KB
页数:49页
时间:2020-08-06
《c++学生信息管理系统(链表+文件)实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、.XX大学二○一二~二○一三学年第二学期xxxxxxx学院面向对象C++语言课程设计报告课程名称:面向对象C++语言课程设计班级:____学号:____________________姓名:_________指导教师:______________________二○一三年六月Word文档.目录一、系统需求与功能分析31.1系统需求分析31.2系统功能分析31.3系统性能分析4二、总体结构设计52.1系统的结构设计52.2系统管理流程图5三、系统详细设计和系统实现7四、系统测试13五、测试结果14六、心得体会19七、附录20附录一:源程序清单
2、20附录二:运行结果32Word文档.一、系统需求与功能分析1.1系统需求分析(1)能完成学生信息的录入,插入、修改、删除、输出、查询等功能;(2)采用单链表存储结构实现;(3)所有数据以外部文件式保存。1.2系统功能分析(1)要设计一个学生信息管理系统,其功能包括:①录入函数Add():将学生信息按尾插法插入到链表中;②插入函数Insert():根据所给学号作为插入位置,在其后插入信息;③修改函数Modify():修改指定的学生信息;④删除函数Delete():当需要删除的学号和一致时则删除对应的学生记录;⑤输出函数Show():显示全部
3、学生信息;⑥查询函数Search():分别可以按学号和按进行学生信息查询;⑦菜单函数Menu():为程序的菜单函数为实现各种功能提供便捷;⑧读取数据函数Read():从外部文件读取学生信息信息;⑨保存数据函数Save():将数据保存到外部文件中。Word文档.(2)线性表的存储结构称为单链表,单链表使用一组任意的存储单元存放线性表的元素,这组存储单元可以连续也可以不连续,甚至可以零散分布在存中的任意位置。为了正确表示元素之间逻辑关系,每个存储单元在存储数据元素的同时,还必须存储其后继元素所在地址信息,这个地址信息称为指针,这两部分组成了数据
4、元素的存储映像,称为结点,结点结构如图1.1所示。图1.1单链表的结点构造设p是一个指针变量,则p的值是一个指针。设指针p指向某个结点,则该结点用*p表示,在单链表中,结点p由两个域组成:存放数据元素的部分和存放后继结点地址的指针部分,分别用p->data和p->next来标识,p->next指向结点ai+1,其指针与结点之间关系如图1.2所示。图1.2指针与结点之间关系的示意图1.3系统性能分析1.硬件环境处理器:CPU主频在500MHz以上存:128MB以上硬盘空间:10MB。2.软件环境操作系统:Windows98/Me/NT/200
5、0/XP(推荐使用Windows2000/XP)。调试环境:VisualC++及以上版本。Word文档.二、总体结构设计2.1系统的结构设计通过对学生信息管理系统的功能分析,可以定义出系统的总体结构模块图,如图2.1所示。学生信息管理系统学生信息插入学生信息修改学生信息删除学生信息显示学生信息查询学生信息读取学生信息保存学生信息录入图2.1学生信息管理系统总体结构设计2.2系统管理流程图前面的分析中已经定义了系统各个模块,属于静态建模的围。在系统运行时刻的动态模型应该由系统的流程决定。当用户运行该系统后可以来进行学生信息信息(录入)插入管理
6、、学生信息修改管理、学生信息删除管理、学生信息显示管理及学生信息显示等操作,具体的流程如图2.2所示。Word文档.进入系统数据读入修改删除显示查询数据保存退出系统不保存YN图2.2系统流程图主模块应负责应用程序的主界面,由它调用其他模块.因此主模块应具有操作性好、界面清晰的特点,使用户能够很便地找到所需功能。根据功能需求的结果分析,主界面应该由学生信息录入管理,学生信息插入管理,学生信息修改管理、学生信息删除管理、学生信息显示管理和学生信息信息查询管理组成,可以通过输入相应的数字进入相应的功能模块。Word文档.三、系统详细设计和系统实现
7、系统总体设计完成后,就可以根据需求对各个模块来进行实现了。在本系统中需要编码实现的主要有学生信息信息插入、学生信息信息查询、学生信息信息修改、学生信息信息删除和学生信息信息输出等5个模块。(1)学生信息录入模块添加的信息包括(允重复)、学号(不允重复)、年龄、性别、宿舍地址、计算机成绩、数学成绩和英语成绩。流程图如下图3.1所示。开始录入数据输入学生信息调用类成员函数采用单链表保存数据结束图3.1录入模块流程图本程序采用的是尾插法,就是每次将新申请的结点插在终端结点的后面,其执行过程如图3.12所示。Word文档.图3.12尾插法建立单链表
8、操作示意图(2)学生信息插入模块输入一个存在的学号作为插入位置,在其后插入的信息包括、学号、年龄、性别、宿舍地址、计算机成绩、数学成绩和英语成绩。流程图如下图3.2所示。开始插入
此文档下载收益归作者所有