家谱树管理系统设计

家谱树管理系统设计

ID:8459568

大小:642.50 KB

页数:29页

时间:2018-03-28

家谱树管理系统设计_第1页
家谱树管理系统设计_第2页
家谱树管理系统设计_第3页
家谱树管理系统设计_第4页
家谱树管理系统设计_第5页
资源描述:

《家谱树管理系统设计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、湖南科技大学数据结构—课程设计(报告)数据结构——课程设计报告家谱树管理系统学生姓名:张朝政学号:年级专业:08级信息与计算科学班级:信计二班指导老师:李英龙老师学院:数学与计算科学学院同组成员:夏鑫杨贵生左斌起止时间:2010.6.21—2010.6.2729第29页湖南科技大学数据结构—课程设计(报告)目录1前言32课程设计的相关说明32.1课程设计的要求32.2课程设计的需求分析32.3课程设计的实验环境43家谱树管理系统的概要分析44家谱树管理系统的详细分析84.1函数调用的关系图84.2系统运行主界面94.3各主要功能的函数实现105系统各功

2、能的调试分析(附有运行截图)195.1文件操作模块195.11新建家谱205.12打开家谱205.13保存家谱205.2家谱操作模块215.21删除某人215.22增加孩子225.23两人关系与某代信息225.24姓名查找225.25个人修改235.3调试小结236心得体会246.1.个人感想及不足之处247参考文献25附录2629第29页湖南科技大学数据结构—课程设计(报告)家谱树管理系统张朝政(湖南科技大学信息与计算科学专业)前言本次课程设计任务是通过编写一个简单的《家谱树管理系统》,进一步学习用MFC开发简单的管理系统。采用VisualC++6.

3、0软件为主要开发工具,更进一步了解系统开发的需求分析、层次设计、数据结构分析、编码测试、模块组装与整体调试的全过程,加深对树状数据结构的理解与MFC环境的使用,以便逐步熟悉大型程序设计的方法,养成良好的编程习惯。本系统主要完成对家谱的相关操作和家谱人员信息的管理,包括打开家谱、新建家谱、保存家谱和家谱人员的姓名查找、生日查找、某代信息查找、增加孩子、两人关系、信息修改、信息删除等。系统的核心是利用对话框的连接和文本处理来存储和修改家谱管理系统的信息联系,其中的每一个动作都可能影响到其它的功能。2课程设计的相关说明2.1课程设计的要求题目:家谱树管理系统

4、1).建立至少30个成员的数据,以较为直观的方式显示结果,并提供文稿形式以便检查。2).对界面的要求是:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。2.2课程设计的需求分析1).输入文件以存放最初家谱中各成员的信息。成员的信息中均应包含以下内容:姓名、出生日期、婚否、地址、健在否、死亡日期(若其已死亡)29第29页湖南科技大学数据结构—课程设计(报告)2).实现数据的存盘和读盘。3).以图形方式显示家谱。(利用树形控件)4).显示第n代所有人的信息。5).按照姓名查询,输出成员信息(包括其本人、父亲、孩子的信息)。6).按照出

5、生日期查询成员名单。7).输入两人姓名,确定其关系。8).某成员添加孩子。9).删除某成员(若其还有后代,则一并删除)。10).修改某成员信息。11).按出生日期对家谱中所有人排序。2.3课程设计的实验环境开发工具:VisualC++运行环境:Windows9x、WindowsNT/2000、WindowsXP3家谱树管理系统的概要分析1、抽象数据类型兄弟孩子树的定义如下:ADTCSNode{数据对象:person是兄弟孩子树中的每一个节点,T是整个树的统一体数据关系:R1={<person,person>

6、<person,person>表示perso

7、n和person之间有血缘关系}基本操作:CSNode*CreatTree(fstream&outfile);初始条件:已经打开了文本文件PersonInfo.txt操作结果:创建一个兄弟孩子树T,并把从文件中的数据送到树中,关闭文件。29第29页湖南科技大学数据结构—课程设计(报告)voidCreatParent_step(CSNode*parent);初始条件:兄弟孩子树T已经存在操作结果:对所有的孩子节点添加指向父亲的指针voidInOrderTraverse(CSNode*T);初始条件:兄弟孩子树T已经存在操作结果:对T进行中序遍历。bool

8、Today_Brithday(CSNode*T);初始条件:兄弟孩子树T已经存在操作结果:根据计算机系统的时间判断几天是否有人过生日,并显示他们的名字。bool(intn,CSNode*T,LinkQueue&Q);初始条件:兄弟孩子树T已经存在,队列Q也已经存在操作结果:用队列Q返回第N代人的所有信息voidLink_Info(LinkQueueQ);初始条件:队列Q中是第N代人的所有信息操作结果:显示队列中所有人的信息。CSNode*DetectMember_Name(CSNode*T,charname[]);初始条件:兄弟孩子树T已经存在操作结果

9、:根据输入的姓名进行查找,如找到则返回该节点的指针。CSNode*DetectMember_B

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。