C语言 家谱管理系统

/*7、家谱管理系统 (4)

任务:实现具有下列功能的家谱管理系统

功能要求:

1). 输入文件以存放最初家谱中各成员的信息,成员的信息中均应包含以下内容:

姓名、出生日期、婚否、地址、健在否、死亡日期(若其已死亡),也可附加其它信息、但不是必需的。

2). 实现数据的存盘和读盘。

3). 以图形方式显示家谱。

4). 显示第n 代所有人的信息。

5). 按照姓名查询,输出成员信息(包括其本人、父亲、孩子的信息)。

6). 按照出生日期查询成员名单。

7). 输入两人姓名,确定其关系。

8). 某成员添加孩子。

9). 删除某成员(若其还有后代,则一并删除)。

10).修改某成员信息。

11).按出生日期对家谱中所有人排序。

12).打开一家谱时,提示当天生日的健在成员。

要求:建立至少30个成员的数据,以较为直观的方式显示结果,并提供文稿形式以便检查。

界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。

存储结构:学生自己根据系统功能要求自己设计,但是要求相关数据要存储在数据文件中。

测试数据:要求使用1、全部合法数据;2、局部非法数据。进行程序测试,以保证程序的稳定。

测试数据及测试结果请在上交的资料中写明;

*/

#include

#include

#include

#include

#include"map.h"

#define MAXN 100

#define MAXMEM 100

#define Elemtype char

//

//树

typedef struct BiTNode

{

int mark;//标记

int level;

char name[50];//姓名

char birthday[50];//生日

char address[MAXN];//住址

bool marriage;//婚否(true表示结婚,false表示没结婚)

bool live;//建在(true表示活着,false表示过世)

bool sex;//性别(true表示男,false表示女)

char livemassage[50];//死亡日期(如果其已经死亡)

Elemtype data;//

struct BiTNode *lc,*rc;

}BiTNode,*BiTree;

//

//树的相关操作

char nametemp[50];//姓名

char birthdaytemp[50];//生日

char addresstemp[MAXN];//住址

bool marriagetemp;//婚否(true表示结婚,false表示没结婚)

bool livetemp;//建在(true表示或者,false表示过世)

bool sextemp;

char livemassagetemp[MAXN];//死亡日期(如果其已经死亡)

char ch;//额外使用

int leveltemp;//人的代数

int Nth;//显示第n代人时要用

char searchdata[50];

char searchname[50];

int count;//计数

int choice;//各种选择

int use;

BiTree temp;

struct BiTNodeList

{

BiTree data;

BiTNodeList *next;

};

BiTNodeList *Li

st;

void CreatBiTree(BiTree &T,FILE *in)//建立双链二叉树

{

fscanf(in,"%c",&ch);

//printf("%c\n",ch);

if(ch == '@')

用c语言如何以图形方式显示家谱,数据结构_家谱管理系统相关推荐

  1. python隐藏画笔箭头的函数是hide_Python开发的串行通信上位机程序三部曲第三部分,串口,通讯,用,图形,方式,显示,数据...

    用Visual Basic或者C#, LabVIEW等软件开发的上位机界面,和文本式交互界面比较而言,就是可以用图形方式来显示数据.那么python可不可以用图形来显示数据呢?Of course! 和 ...

  2. python是动态类型语言、变量不需要显示声明类型_【IT专家】第3章 Python基础

    第 3 章 Python 基础 2017/12/13 0 3-1 .标识符.为什么 python 中不需要变量名和变量类型声明? python 语言是动态的.强类型语言,一言以蔽之! 动态编译语言特点 ...

  3. html语言中的链接方式,什么是超链接_在html中设置超链接的方法 - 驱动管家

    什么是超链接?html如何设置超链接?如果想要优化自己的网站,那么肯定少不了超链接的存在.正常情况下,我们会在html中设置超链接,从而使得点击的时候会跳转到需要的界面,从而增加自己网站的浏览量.下面 ...

  4. vspy如何在图形面板显示报文_GUI 图形用户界面 [学习笔记]

    今晚返璞归真了一把, 系统了解了一下GUI的有关知识: GUI(Graphical User Interface)图形用户界面 是指采用图形方式显示的计算机操作用户接口.与早期计算机使用的命令行界面相 ...

  5. java图形界面外部类例题_[JAVA_开课吧资源]第四周 图形用户界面程序设计

    主题一 图形用户界面程序设计 » 图形用户界面概述 Java语言提供了大量支持GUI设计的类,如按钮.菜单.列表.特性框.对话框等组件类,同时也提供了包含窗口.面板等容器类.Java的抽象工具集AWT ...

  6. c语言图形方式初始化,c语言图形方式下的编程.doc

    c语言图形方式下的编程.doc C语言图形方式下的编程 学习目标 ·了解PC显示系统的结构 ·C语言图形初始化的一般方法 ·C语言常用的图形处理函数 显示系统简介 PC机显示系统一般是由显示器和显示卡 ...

  7. R语言ggplot2可视化:使用ggplot2按照热力图的方式显示全是分类变量的dataframe数据、并自定义因子(factor)的图例颜色legend

    R语言ggplot2可视化:使用ggplot2按照热力图的方式显示全是分类变量的dataframe数据.并自定义因子(factor)的图例颜色legend(use heatmap to visuali ...

  8. turbo c图形方式下编程小技巧

    turbo c图形方式下编程小技巧 Turbo C具有丰富的图形功能,在用其编写各种应用程序和菜单时 ,常常需要将光标定位输入数据和显示立体字型,而Turbo C本身又没 有直接提供可以使用的函数,往 ...

  9. r语言参数fig=c(),干货︱R语言绘图—基础图形参数整理

    继上一期的文章[干货丨零基础学习 R 语言?]小编在介绍了R语言基础入门(包括R的安装和载入.数据导入和导出方法等),在这一期小编继续为你挖掘R语言的巧妙用处,跟大家探讨如何创建和保存图形,如何修改图 ...

最新文章

  1. sentinel使用(结合OpenFeign)
  2. 深入信号和槽(Signals and Slots in Depth)
  3. 带哨兵节点的链_HBA公链 | IPFS:区块链“不可能三角”的可能解
  4. java学习(39):九九乘法表
  5. android gradle错误,Android studio gradle错误与顶级异常
  6. vi定位到第一行,最后一行和任意行
  7. SAP License:新总帐行项目无法显示
  8. IN改写关联注意事项!
  9. python和go哪个就业前景好_Python和Java就业前景对比
  10. (转)金融信息服务业的国际国内竞争格局及新动向
  11. BZOJ2191:Splite
  12. Ubuntu20.04安装ROS教程(虚拟机/双系统,含报错解决)
  13. MSProject的使用教程
  14. 检查型异常有哪些java_JAVA系列之检查型异常与非检查型异常的详解
  15. 计算机运行瓶颈,我的电脑瓶颈在哪呢?
  16. 抛不开我执的老罗,长不大的周伯通
  17. windows 禁用中文输入法
  18. 3d Max安装失败(Microsoft Visual C++ 2010 Redistributable)
  19. iRegNet3D:疾病相关SNP位点在三维调控网络中的作用
  20. 初学C语言:判断输入的数是否能被5整除。

热门文章

  1. linux设置系统时间戳
  2. 用诺模图可视化你的模型
  3. Vistual Studio Code中Markdown使用数学公式
  4. np.array数组的切片
  5. 机器学习和深度学习有什么区别?
  6. Ant入门教程之常用命令
  7. 如何计算近似纳什均衡_莫纳什大学申请条件有哪些
  8. 蓝桥幼儿园(蓝桥杯)
  9. 【YOLOv5报错】AssertionError: Label class 4 exceeds nc=4 in /xxxxxx解决方法
  10. Marvin is plain Jane WriteUp_实验吧_Crypto