900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 家谱宗族网站源码_家谱管理系统(源代码)

家谱宗族网站源码_家谱管理系统(源代码)

时间:2024-03-15 10:02:26

相关推荐

家谱宗族网站源码_家谱管理系统(源代码)

家谱管理系统

——

C

语言(数据结构)

目的和要求:树形结构是一种非常重要的非线性结构,它用于描述数据元素之间

的层次关系,人类家谱是树形结构的典型体现,通过此项训练让学生掌握树形结

构的知识;使学生重点掌握树与二叉树的转换,二叉树的存储和遍历,和二叉树

相关的一些运算;要求完成家谱信息的录入和保存,任意成员的查找及某一成员

祖先、子孙、兄弟、堂兄弟的查找。

排答疑和辅导。

完整代码:

#include

#include

#include

intMATEFLAG=0;//

是否入赘或嫁入这家的,

1

表示为是,

0

表示否

typedefstructTreeNode//

树节点定义

{

intNum;//

保存此人儿女个数

charName[20];//

保存此人姓名

charKind;//

保存此人性别,男

M

,女

F

structTreeNode*NextNode[20];//

保存此人的儿女

,NextNode[0]

里存放配偶的地址

structTreeNode*Parent;//

保存此节点的父节点

}TreeNode;

voidCreatTree(TreeNode*Tree);//

创建树

voidOutPutAll(TreeNode*Tree);//

输出树

TreeNode*SearchTree(TreeNode*Tree,charname[],intlength);

voidMainMenu(TreeNode*Tree);

voidSubMenue1(TreeNode*Tree);

voidSubMenue2(TreeNode*Tree);

voidChange(TreeNode*Tree);

voidAddNew(TreeNode*Tree);

voidOutPutMessage(TreeNode*Tree,charname[],intlength);

//

主函数

voidmain()

{

TreeNode*Tree;//

产生根节点

Tree=(TreeNode*)malloc(sizeof(TreeNode));

Tree->Parent=NULL;

strcpy(Tree->Name,"0");

MainMenu(Tree);//

显示主菜单

}

//

添加新的成员

voidAddNew(TreeNode*Tree)

{

SubMenue2(Tree);//

添加新成员界面

}

//

显示添加家庭信息的界面

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。