欢迎来到天天文库
浏览记录
ID:55959365
大小:490.75 KB
页数:22页
时间:2020-06-18
《二叉树家谱管理系统.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、摘要本文设计了一个对数据输入,输出,储存,查找的多功能软件,本文需要保存家族的基本信息,包括姓名及它们的关系,但是由于家族信息很巨大而且关系很复杂所以采用二叉树来表示它们的关系。并且具有保存文件的功能,以便下次直接使用先前存入的信息。家谱的功能是查询家族每个人的信息,并且输出它们的信息,还要具有查询输出功能。本文采用二叉树来存取家族的基本信息,头结点作为父亲节点,他的左孩子为他的妻子,妻子结点的右孩子为他的孩子,依次存储每个家庭的信息。可以查找每个父亲的孩子和每个人的所有祖先。关键词:二叉树家谱结点目录1系
2、统功能概述......................................................11.1系统功能...................................................1图2成员二叉树功能模块图........................................41.2总体功能模块...............................................42系统各功能模块的详细设计..............
3、............................42.1功能选择.....................................................42.2信息输入.....................................................62.3信息输出.....................................................72.4信息存盘.....................................
4、................72.5信息清盘.....................................................82.6信息查询.....................................................82.7源程序......................................................103设计结果与分析...............................................
5、....163.1菜单函数功能测试............................................164.2输入功能函数测试............................................163.3输出功能函数测试............................................173.4清盘功能函数测试............................................173.5存盘功能函数测试...........
6、.................................173.6查询功能函数测试............................................18总结...............................................................19参考文献...........................................................201系统功能概述1.1系统功能实现的方法是先定义一个二叉树,该二叉
7、树上的每个结点由三个元素组成:姓名、指向它左孩子的指针、以及指向它右孩子的指针构成。该家谱管理系统将信息用文件的方法进行存储管理,再从文件中将成员信息以递归的方法创建二叉树。该输入成员信息的方法是将父亲结点存上父亲的信息,然后父亲结点的左孩子存上母亲的信息,母亲结点的右孩子存上孩子的信息。(1)定义结构体结构体为表示一个对象的不同属性提供了连贯一致的方法,结构体类型的说明从关键词struct开始,成员可以由各种数据类型混合构成,成员甚至还可以是数组或者其他类型的结构,但是,结构体中不能包含自身定义类型的成员
8、。本文定义了两个结构体,分别是家族成员和二叉树结点的结构体。代码如下:typedefstructfnode{charfather[NAMEWIDTH];charwife[NAMEWIDTH];charson[NAMEWIDTH];}FamType;typedefstructtnode{charname[NAMEWIDTH];structtnode*lchild,*rchild;}BTree;(2)二叉树的建立二叉
此文档下载收益归作者所有