第一范文网 - 专业文章范例文档资料分享平台

数据结构(二叉树)家谱管理系统

来源:用户分享 时间:2025/6/18 2:52:32 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

void MarryChange(Tree TR,char name[20]); //已知树TR和一个人的姓名name,因为结婚需要改变节点中的配偶一栏

void Open(Tree &TR);//打开保存家谱信息的文件 void Save(Tree TR);//保存家谱信息到指定文件

void PrintTree(Tree TR); //输出家谱中所有成员的信息

3 详细设计

3.1结构体定义

struct People //{

int num;

char name[20]; char sex;

char borndate[15]; int generation; char matename[20]; int parent;

char infor[100]; LinkList child; };

struct Node //{

int a;

struct Node * next; };

struct LinkList //{

NodePoint La; };

struct Tree //{

PeoplePoint Tr; int Length;

int TREE_INIT_SIZE; };

定义结构体People 定义结构体Node 定义链表 定义树 3.2 初始化

void InitTree(Tree &TR) //在树已定义的情况下,初始化树TR {

People peop[INIT_SIZE]; TR.Tr=peop; TR.Length=0;

TR.TREE_INIT_SIZE=INIT_SIZE; }

LinkList InitLinkList(void)//在什么都没有的情况下,初始化一个带头结点的链表并返回链表L {

LinkList L; NodePoint Head;

Head=(NodePoint)malloc(sizeof(Node)); Head->a=0; Head->next=NULL; L.La=Head; return (L); }

void CreatFamilyTree(Tree &TR) //在什么都没有的情况下,创建一个家谱TR。并返回TR {

LinkList lp; TR.Tr=peop; TR.Length=0;

TR.TREE_INIT_SIZE=INIT_SIZE; int i=0,n,j,k,c;

cout<<\请输入家谱中一共有多少人\\n\

cin>>n; TR.Length=n; for(i=0;i

(peop[i].num)=i+1;

cout<<\请输入该人的姓名:\\n\cin>>peop[i].name;

cout<<\请输入该人的性别:\\n\cin>>peop[i].sex;

cout<<\请输入该人的出生日期:\\n\cin>>peop[i].borndate;

cout<<\请输入该人是第几代人:\\n\cin>>peop[i].generation;

cout<<\请输入其配偶的姓名,如无则输入Nomarry\\n\cin>>peop[i].matename; cout<<\请输入其双亲的编号:\\n\cin>>peop[i].parent;

cout<<\请输入该人相关的备注信息:\\n\cin>>peop[i].infor; LinkList L; NodePoint Head;

Head=(NodePoint)malloc(sizeof(Node)); Head->a=0; Head->next=NULL; L.La=Head;

peop[i].child=L; lp=peop[i].child;

cout<<\请输入其孩子的个数:\\n\cin>>k;

for(j=0;j

cout<<\请输入孩子的编号:\\n\cin>>c;

AddLinkList(lp,c); } } }

3.3 插入操作

开始 输入成员信 息 判断格式是否正确 是 AddLinkLi st(L1,c); 结束

void AddPeople(Tree &TR)

//已知树TR,当有人出生时,添加一个节点

搜索更多关于: 数据结构(二叉树)家谱管理系统 的文档
数据结构(二叉树)家谱管理系统.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c1yyb666zha3xy6q955p40ne2d1fp330143y_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top