网站大量收购独家精品文档,联系QQ:2885784924

《数据结构课程设计-家谱的实现与设计》.doc

《数据结构课程设计-家谱的实现与设计》.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
课 程 设 计 报 告 课程设计名称:数据结构课程设计 系 : 三系 学 生 姓 名 : 朱强 班 级: 13软件 学 号: 20130311227 成 绩: 指 导 教 师: 刘杰 开 课 时 间:2014-2015学年一学期 设计题目一:家谱的实现与设计 实习目的 通过学习,了解并初步掌握设计、实现较大系统的完整过程,包括系统分析、编码设计、编码集成以及调试分析,熟练掌握数据结构的选择、设计、实现、以及操作方法,为进一步的开发应用打好基础。 问题描述 家谱的设计主要是实现对家庭成员信息的建立、查找、插入、修改、删除等功能。可。基本功能如下: (1)家谱祖先数据的录入(树的根结点)。 (2)家庭成员的添加:即添加某一人的儿女,儿女的数目由控制台端给出,然后输入相应的儿女姓名(此处儿女的姓名不能重名)。 (3)家庭成员的修改:可以修改某一成员的姓名。 (4)员的查询:查询某一成员在家族中的辈分(第几代),并能查询此成员的所有子女及这一辈的所有成员。 (5)家庭成员的删除:删除此成员时,若其有后代,将删除其所有后代成员。 需求分析 该程序所做的工作是对家族成员的的管理,为家族成员对各代成员的姓名,性别及子女情况的记录、查询提供方便。此程序规定: 1.在姓名录入时,姓名为10个字母以内的字符串;性别以M/F表示; 2.程序的输出信息主要为:输出家族成员在家族中的辈分(第几代),并能查询此成员的所有子女及这一辈的所有成员。 3.程序的功能主要包括:家谱祖先数据的录入、家庭成员的添加、家庭成员的修改、员的查询、家庭成员的删除; 概要设计 系统用到的数据有: char name[MAX]; char sex; / int generation; 1)typedef struct node{ } //定义data存储结构 2)typedef struct ft{ } //创建结构体 3)ft *search(ft *p,char ch[]) // 搜索指针函数 4)ft *parent(ft *p,ft *q,int *flag) //通过parent函数得到双亲结点。用flag标志,-1为左孩子,1为右孩子 5)int generation(ft *p,char ch[]) // 获得搜索到的成员的代目的返回值 6)void saves(ft *p,char b[],char c,int d) //建立家谱孩子结点 创建结点并对l赋值 保存 7)void InitTree() //初始化 8)void Add() //添加 9)void Search() //查询 10)void Change() //修改 11)void Delete() //删除 12)int main() //主函数 各程序模块之间的调用关系: 主函数12)可以调用7)至11)。 详细设计 #include stdio.h #include malloc.h #include string #include stdlib.h #define MAX 10 typedef struct node{ //定义data存储结构 char name[MAX]; //姓名 char sex; //性别 int generation;//代目 }node; typedef struct ft{ //创建结构体 struct node l; //家谱中直系家属 struct ft *lchild;//用来指向兄弟 struct ft *rchild;//用来指向孩子 }ft; ft *root; //root是结构体ft的指针 ft *search(ft *p,char ch[]) // 搜索指针函数 { ft *q; if(p==NULL) return NULL;//没有家谱,头指针下为空 if(str

您可能关注的文档

文档评论(0)

lipinting + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档