2015-2016第2学期数据结构大作业题目
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构大作业》要求
一、作业目的
1、掌握用数据结构的知识进行C++程序设计。
2、应用所学的数据结构完成一个具有一定实际意义的应用程序的设计、编码、调试,锻炼
实践动手能力,提高编程水平。
二、作业内容
1、图书管理系统
问题描述:实现图书管理系统,主要为图书管理员和借阅者提供管理和查询服务。
基本功能要求:
程序必须采用链表数据结构实现。
图书信息至少包括以下信息:书名,ISBN、作者、出版社、出版时间,入库时间,库存量(图书馆购买此书的数目),借阅数(被借阅的本数)。
图书管理员身份可以完成以下操作:
(1)录入:增加一本图书信息;
(2)删除:删除某一本图书的信息;
(3)修改:修改某一本图书的信息;
(4)查询:根据书名或图书ISBN等查询图书信息(可选择:简单条件查询,组
合条件查询等)。
(5)排序:根据书名或入库时间等信息进行排序,尽可能提高查找和维护性能;
(6)借书:借出一本书,该书的借阅量增加一本。
(7)还书:还回一本书,该书的借阅量减少一本。
(8)统计:统计所有的借出的图书数目,即:所有图书借阅量之和。
(9)输出:输出所有图书的所有信息,要求格式清晰,方便查看。
扩展功能要求:
(1)导入:把用户信息从文件读入程序;
(2)导出:把用户信息导出到文件中保存;
2、学生管理系统
必须完成学籍登记表中的下面功能。
登记表中包括:学号、姓名、班级(如:14级软件1班)、性别、手机号码、选修课程等信息。
程序必须采用链表数据结构实现;
(1)插入:将某学生的基本信息插入到登记表中;
(2)删除:将满足条件的基本信息删除;
(3)修改:对基本信息的数据项进行修改;
(4)查询:查找满足条件(学号或姓名等字段)的学生;
(5)排序:根据学生信息(例如:学号或电话号码等)进行排序,尽可能提高查找和维护性能;
(6)增加课程信息(如:课程名、课程编号、开课学期等信息)管理(增加、删除和查找和输出,不限存储结构);
(7)实现学生的选课功能(学生选择一门课后,该课程信息会出现在该生“选修课程”);
(8)输出:将登记表中的所有学生的(或满足条件)信息全部输出,要求格式清晰,方便查看。
扩展功能要求:
(1)导入:把用户信息从文件读入程序;
(2)导出:把用户信息导出到文件中保存;
3、家谱管理系统
问题描述:家谱用于记录某家族历代家族成员的情况与关系。本系统要求能对家谱进行存储、更新、查询、统计等操作。
基本功能要求:
程序必须采用树形数据结构实现。
(1)录入:录入家庭成员信息,家庭成员的基本信息包括:(姓名,性别,出生日期,死亡日期,职业等)。各家庭成员之间的关系,以树形结构存储;
(2)修改:修改成员信息;
(3)删除:删除成员信息(删除某成员必须把其子孙全部删除);
(4)输出:将家谱以较友好的格式输出(显示);
(5)查询:按基本信息查询成员。
(6)统计:统计并显示结果,统计的项目可以包括(平均寿命、男女比例等);
扩展功能要求:
(1)导入:把用户信息从文件读入程序;
(2)导出:把用户信息导出到文件中保存;
三、作业要求
1、选题:从3个题目中任选其一,独立完成。选做第2和3个题目的将得到较高的分数。
2、程序代码要求:程序要求能够正常运行,基本功能必须全部实现。完成可选做的扩展功
能将得到较高的分数。容错性强和功能细节考虑更完全也将得到较高的分数。
3、开发语言:C++;开发平台:vc++6.0或Visual studio。
四、提交要求
1、每位同学必须把源程序和设计说明书电子版提交到:ftp://10.5.1.5
每位同学的作业放在一个文件夹中提交,文件夹按以下格式命名:“班内序号+姓名”
14软件1班:提交到王方丽老师(办公室:B1-310)的“/上传/数据结构大作业”
文件夹中。
用户名:wang 密码:wang
数据结构大作业提交截止日期::学委联系指导老师。
14软件2班:提交到张伟娜老师(办公室:B1-311,办公电话:36903374)的“/
上传/数据结构大作业”文件夹中。
用户名:zhangweina密码:zhangweina
数据结构大作业提交截止日期:开学后第六周周五之前
14信息1班:提交到李妍老师(办公室:B1-312,办公电话:36903372)的“/
上传/数据结构大作业-14信息1班”文件夹中。
用户名:li 密码:li
数据结构大作业提交截止日期:开学后第六周周五之前
每位同学必须提交数据结构大作业设计说明书打印版(不少于3000字)。(学习委员收齐后按序号排好序交到指导老师办公室)
2、独立完成,不得抄袭,凡是发现抄袭的(无论抄与被抄者),均不及格。
3、大作业提交后根据程序和说明书情况进行答辩,答辩名单和答辩时间另行通知。
五、评分标准:
程序50%,程序设计说明书50%(程序说明书不能说明问题的参考答辩情况)。
六、数据结构大作业设计说明书内容要求:
1. 封面:要求写明课程、题目名称、学院、专业班级、年级、姓名、学号、班内序号(见
下页)。
2. 概述:开发环境、用到的基本原理或技术、需求说明等。
3. 程序概要设计:各种功能完成的详细情况(已经实现了哪些功能,哪些功能未实现或有
什么bug)、程序流程是什么(流程图)等。
4. 程序详细设计:各种功能的实现方法描述、关键代码分析(要用文字描述,描述过程中
可以在文字中穿插少量代码,但不要贴大段的代码)。
5. 使用情况:展示各种功能的运行情况(必须有截图说明)。
6. 总结:分析程序的优点和不足、开发时遇到的困难及解决的问题、总结。
7. 参考文献。
七、格式要求:
一级标题(小三宋体,1.5倍行间距)
二级标题(四号宋体,1.2倍行间距)
正文格式:5号宋体,单倍行间距
其他格式说明: