ImageVerifierCode 换一换
格式:DOCX , 页数:21 ,大小:18.38KB ,
资源ID:17958769      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/17958769.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(家谱管理系统含源代码Word格式.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

家谱管理系统含源代码Word格式.docx

1、TreeNode * SearchTree(TreeNode *Tree,char name,int length);void MainMenu(TreeNode *Tree);void SubMenue1(TreeNode * Tree);void SubMenue2(TreeNode *Tree);void Change(TreeNode * Tree);void AddNew(TreeNode * Tree);void OutPutMessage(TreeNode * Tree,char name,int length);/主函数void main()TreeNode *Tree;/产生

2、根节点Tree=(TreeNode *)malloc(sizeof(TreeNode);Tree-Parent =NULL;strcpy(Tree-Name,0);MainMenu(Tree);/显示主菜单/添加新的成员void AddNew(TreeNode * Tree)SubMenue2(Tree);/添加新成员界面/显示添加家庭信息的界面void SubMenue2(TreeNode *Tree)char c;int num;char name20;TreeNode * NewNode;getchar();while(1)system(clsprintf(请选择你的操作nA:添加某个人

3、的子女的信息nB:添加某个人配偶的信息nC:退出n请选择相应功能:nc=getchar();switch(c)case A: /添加子女信息请输入那个人的名字:scanf(%s,name);Tree=SearchTree(Tree,name,20);/在家谱里查找这个人if(Tree=NULL)该家谱图中没有%s这个人的信息请确认是否输入错误nbreak;if(Tree-Parent=NULL&NextNode0=NULL|Tree-Parent!=NULL&Name!=Tree-Parent-NextNode0-Name)至今还没有配偶请先添加配偶n,Tree-Name);(Tree-Num

4、20|Tree-NumParent;NewNode=(TreeNode *)malloc(sizeof(TreeNode);请输入添加人员姓名:,NewNode-请输入添加人员性别女F男M:%1s,&NewNode-Kind);num=Tree-Num;NextNode0=(TreeNode *)malloc(sizeof(TreeNode);NextNode0=NULL;Parent=Tree;NextNodenum+1=NewNode;Num=Tree-Num+1;子女的信息添加成功nBstrcmp(Tree-Name,Tree-Name)=0|Tree-NextNode0!=NULL)已

5、经有了配偶n该家谱图中没有%s这个人的信息请确认nNextNode0=NewNode;C本项服务到此结束nndefault:对不起!你的选择错误nif (c=|c=c)请按Enter键继续操作n/修改某个人的信息void Change(TreeNode * Tree)请输入你要修改的人的信息:NewNode=SearchTree(Tree,name,20);if(NewNode=NULL)return;elseSubMenue1(NewNode);/输出副菜单void SubMenue1(TreeNode * Tree)int flag,i;char Parent220;修改个人的信息n修改父

6、母的信息n修改兄弟姐妹的信息nD:修改子女的信息nE:修改配偶的信息nF:请输入修改的姓名:如果不需要修改就输入0然后按Enter键继续nif(strcmp(name,)!=0)Name,name);是否要修改性别:如果需要就输入1不需要修改就输入然后按Enter键继续n%dflag);if (flag=1)Kind=F|Tree-fKind=M;else Tree-个人信息修改成功nParent=NULL) /判断是不是头节点是这个家谱图里最顶端的人没有父母信息!if (MATEFLAG=1) /判断是不是入赘或加入此间的她是嫁入此间的所以父母信息不在家谱内包括n他是入赘此间的所以父母信息不

7、在家谱内包括nstrcpy(Parent0,母亲strcpy(Parent1,父亲请输入%s要修改的姓名:然后按Enter键继续,Parent0);,Parent1);父母的信息修改成功nNewNode=Tree-if(NewNode=NULL) /判断是不是头节点是这个家谱图里最顶端的人没有兄弟姐妹信息!是不是入赘或嫁入这家的她是嫁入此间的所以兄弟姐妹信息不在家谱内包括n他是入赘此间的所以兄弟姐妹信息不在家谱内包括nif(NewNode-Num=1)没有兄弟姐妹nfor(i=1;ii+)NextNodei-Name!请输入%s修改的姓名:然后按Enter键继续nstrcpy(NewNode-

8、G|NewNode-gelse NewNode-兄弟姐妹的信息修改成功nDNum=0)至今还没有子女nif (Tree-Parent !if (strcmp(Tree-Name)=0) /如果他是入赘或者是嫁入的就需用配偶节点完成修改然后按Enter键继续n子女的信息修改成功nEifNextNode0=NULL&Name)!至今还没有配偶nName)=0)nnt请输入%s修改的姓名:Enter键继续ntNextNode0=NULL)配偶的信息修改成功n/输出主菜单void MainMenu(TreeNode *Tree)/用于接受用户输入的选项/清屏欢迎进入家谱管理系统nnn 菜单 nn 输入

9、家谱信息-1n 查找家族成员-2n 添加家族成员-3n 输出家谱信息-4n 修改成员信息-5n 退出-6nnnn请选择相应的功能: TreeNode * NewNode; NewNode=(TreeNode *)malloc(sizeof(TreeNode);/建立新节点 printf(请输入姓名: scanf(/给节点姓名赋值 printf(请输入性别(女F,男M): getchar();/给性别赋值 scanf(%cKind); / Tree-Parent=NewNode; Tree-Parent=NULL; CreatTree(Tree); printf(家谱图已经建立成功n break

10、; case 2 if(strcmp(Tree-)=0) printf(家谱图还未建立请先建立n printf(请输入你要查找的人的姓名: OutPutMessage(SearchTree(Tree,name,20),name,20);3 AddNew(Tree);4 整个家谱的主要信息如下:OutPutAll(Tree);5if(strcmp(Tree-)=0)Change(Tree);6本程序结束,欢迎下次使用。exit(0);您输入错误,请重新输入。void CreatTree(TreeNode *Node)int i;TreeNode *NewNode;Node-/ Node-请输入%s的子女的数目:,Node-(Node-Num);请输入%s的配偶的姓名:if(Node-Num)=0&strcmp(NewNode-return ;if (Node-|Node-)/自动填写其配偶的性别Parent=Node;=Node-请输入%s的第%d子女的名字nName,i);请输入%s的第%d子女的性别女F男M:NextNodei=NewNode;CreatTree(Node-NextNodei);/遍历并输出树中的内容void OutPutAll(TreeNode *Tree)int i, flag=0;/flag记录节点的性别%s 性别:Kin

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1