电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

数据结构家谱管理系统(二叉链表)(DOC58页)VIP免费

数据结构家谱管理系统(二叉链表)(DOC58页)_第1页
数据结构家谱管理系统(二叉链表)(DOC58页)_第2页
数据结构家谱管理系统(二叉链表)(DOC58页)_第3页
《项目实训二》项目名称__家谱管理系统__姓名_____________班级_________________学号__________________指导教师______________2018.1问题描述:家谱用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理系统,实现对一个家族所有的资料进行收集整理。实现对家庭成员信息的建立、查找、插入、修改、增加、删除、更新、统计等等功能。目的和要求:目的:1、能根据具体问题的具体情况,结合数据结构课程中的基本理论和基本算法,分析并正确确定数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。2、提高程序设计和调试能力。通过上机学习,验证自己设计的算法的正确性。学会有效利用基本调试方法。第1页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第1页共48页3、初步掌握软件开发过程中问题分析、系统设计、程序编码、测试等基本方法和技能。4、培养根据选题需要选择学习书籍,查阅文献资料的自学能力。要求:用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理系统,实现对一个家族所有的资料进行收集整理。支持对家谱的增加,删除,更新,统计等。软件环境:MicrosoftVisualStudio2010流程设计:第2页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第2页共48页开始Main函数Menu函数FamilyTree函数Getroot函数Case1Case2Case3Case4Case5Case6Case7Case8Case9Case10defeault结束Creat函数函数递归调用Menu函数PreOrder函数函数InOrder函数函数PostOrder函数函数Generation函数函数NumberOfPeople函数函数LifeNum函数函数Message函数函数AddNewPeople函数数DeletePeople函数SetNewName函数FindChild函数SaveToFile函数FileToFamilyTree函数递归调用递归调用递归调用PrintMessage函数函数SetNode函数函数函数PreFindFather函数函数PreFindBrother函数函数PreFindFather函数函数PreFindBrother函数函数PrintMessage函数函数第3页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第3页共48页模块划分:1、统计模块(1)统计家族总人数、健在人数、几代人(2)主要函数:intGeneration(Node*root);//这个家族共有几代人intNumberOfPeople();//家族的总人数intLifeNum();//健在人数(3)实现方法:静态成员变量(4)实现结果:2、更新模块(1)创建家谱、增加成员、删除成员、成员改名(2)主要函数:Node*Creat();//构造函数调用voidAddNewPeople(Node*root,stringFatherName,stringNAme);//增加新的家族成员intDeletePeople(Node*root,stringFatherName,stringDeletepeople);//删除家族成员intSetNewName(Node*root,stringNAme,stringNewName);//更改姓名(3)实现方法:创建家谱和成员改名主要通过递归调用;增加成员和删除成员主要通过栈的非递归调用。(4)实现结果:第4页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第4页共48页3、查询模块(1)查询成员详细信息、查询成员的孩子以及孩子的详细信息(2)主要函数:intMessage(Node*root,stringName);//显示该成员的基本信息intFindChild(Node*root,stringNAme);//显示孩子信息(3)实现方法:通过递归调用,找到成员,输出相应的信息(4)实现结果:第5页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第5页共48页4、显示模块(1)前序、中序、后序遍历家谱(2)主要函数:voidPreOrder(Node*root);//前序递归遍历输出家谱voidInOrder(Node*root);//中序递归遍历输出家谱voidPostOrder(Node*root);//后序递归遍历输出家谱(3)实现方法:递归遍历(4)实现结果:5、文件模块(1)保存到文件、从文件读取(2)主要函数:voidSaveToFile(Node*root);//保存到文件voidFileToFamilyTree(Node*root);//从文件中读取(3)实现方法:文件流(4)实现结果:第6页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第6页共48页第7页共48页编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第7页共48页数据结构实现:1、生日结构体str...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部