用二叉树实现家谱运算

栏目:资讯发布:2023-10-26浏览:3收藏

用二叉树实现家谱运算,第1张

C++语言: 二叉树实现的简单家谱树

/

File Name: BiTreecpp

Author: Geng Lequn[glq2000@126com]

Thur July 1 2010

Discription: 建立二叉家谱树,实现输入任意两个人的名字,查找得到其关系

/

#include <iostream>

#include <string>

#include <cstring>

#include <cstdlib>

#include <vector>

#include <mathh>

using namespace std;

typedef struct _Node

{

string sex; //性别 m 男; f 女

string name; //此人的姓名

string spause; //配偶的姓名

unsigned short level; //层次 辈分最高一层为1,下一层为为2,以此类推

struct _Node l_child; //指向其第一个孩子的指针

struct _Node r_brother; //指向其某一个兄弟姐妹的指针, 即左孩子为其后代,右孩子为其兄弟姐妹

struct _Node btr; //指向其父亲或者母亲的指针

_Node():level(0),l_child(NULL),r_brother(NULL),btr(NULL){cout<<"constructor"<<endl;}

~_Node(){cout<<name<<" destructor"<<endl;}

}Node, PNode;

void CreateBiTreePreOrder(PNode &pn, PNode pback, unsigned short depth);//建立二叉家谱树,以先序方式

void VisitBiTreePreOrder(PNode root); //前序遍历此二叉树

void TellRelation(PNode root); //判断两人关系

void DestroyBiTreePostOrder(PNode root); //销毁二叉树,释放节点占用的空间

void FindPersonMiddleOrder(PNode root, string name, PNode &presult); //返回家谱中指向某人的指针,找不到返回NULL

Node root=NULL; //全局变量,二叉树的根节点

unsigned findPersonFlag = 0; //标志位,0 没找到; 1 找到,找到后就不再搜索直接返回;利用此flag可避免将整个tree遍历一遍(若该name在tree中存在的话)

int main()

{

cout<<"请按先序遍历的顺序根据提示输入家谱信息,不存在则输入\"#\""<<endl;

CreateBiTreePreOrder(root, NULL, 1);//建立二叉家谱树,以先序方式

VisitBiTreePreOrder(root); //前序遍历此二叉树

TellRelation(root); //判断两人关系

DestroyBiTreePostOrder(root); //销毁二叉树

getchar();getchar();getchar();

return 0;

}

/

function:建立二叉家谱树,以先序方式

argument:

pn: 指向二叉树节点的引用

pback: pn这个节点的btr指针的值,即指向其parent的指针

depth: 该节点的层次,分最高一层为1,下一层为为2,以此类推

/

void CreateBiTreePreOrder(PNode &pn, PNode pback, unsigned short depth)

{

string str;

cin>>str; //输入该人信息,格式是 sex-name-spausename,如不存在则输入#

if(str == "#") //如: M-tom-marry, 表示此人叫tom, 男性, 配偶名字marry

{

pn = NULL;

return;

}

//如果是自定义的struct/class,应该使用构造函数。如果是内建数据类型,

//比如int,应该memset。 当然,更好的建议是使用vector取代new出来的数组

pn = new Node;

//处理输入的字符串

vector<string> v;

for(size_t b=0, e=strfind('-'); ; e=strfind('-', b))

{

if(e == string::npos)

{

vpush_back(strsubstr(b));

break;

}

else

vpush_back(strsubstr(b, e-b));

b = e+1;

}

//初始化该节点

pn->sex = v[0];

pn->name = v[1];

pn->spause = v[2];

pn->btr = pback;

pn->level = depth;

//递归建立左右子树的节点

CreateBiTreePreOrder(pn->l_child, pn, depth+1); //注意后两个参数的值

CreateBiTreePreOrder(pn->r_brother, pback, depth); //注意后两个参数的值

}

/

function: 前序遍历此二叉树

/

void VisitBiTreePreOrder(PNode pn)

{

if(!pn)

return;

cout<<endl<<"sex:"<<pn->sex<<endl;

cout<<"name:"<<pn->name<<endl;

cout<<"spause:"<<pn->spause<<endl;

cout<<"level:"<<pn->level<<endl;

cout<<"father's name:"<<((pn->btr == NULL)"NULL":pn->btr->name)<<endl;

cout<<"======================"<<endl;

VisitBiTreePreOrder(pn->l_child);

VisitBiTreePreOrder(pn->r_brother);

}

/

function: 中序遍历找到家谱中的一个人,返回其指针,若找不到,返回NULL

isSpause 1表示是找到的节点的配偶 0表示不是所找到的节点的配偶

/

void FindPersonMiddleOrder(PNode pn, string name, PNode &presult)

{

if(!pn)

return;

FindPersonMiddleOrder(pn->l_child, name, presult);

if(findPersonFlag) return;

if(name == pn->name || name == pn->spause)

{

presult = pn;

findPersonFlag = 1; //全局标志位,0 没找到; 1 找到,找到后就不再搜索直接返回;利用此全局flag可避免将整个tree遍历一遍(若该name在tree中存在的话)

return; //下次使用前不要忘记置为0

}

FindPersonMiddleOrder(pn->r_brother, name, presult);

}

/

function: 判断两人关系,若两人中至少一人不在树中,则两人无关系

若两人在树中,先判断两人是否同层次,若同层,判断是否是亲兄弟姐妹;

若不同层,设辈分大的人为A,辈分小的人为B,判断A和B是亲的还是表的,

比如,A为男性,且比B大一倍,判断A是否为B的爸爸,或亲叔叔(舅舅),或表叔叔(舅舅)

简单起见,此处没有区分是叔叔还是舅舅

比如,A为男性,且比B大两倍,判断A是否为B的亲爷爷(姥爷),或亲爷爷(姥爷)的亲兄弟

,或亲爷爷(姥爷)的表兄弟

简单起见,此处没有区分是叔叔和舅舅等做进一步区分

简单起见,查询时只输入节点中的name,不查询spause,否则处理起来太麻烦

/

void TellRelation(PNode pn)

{

string name1, name2;

//p1指向name1, p2指向name2, pbig指向辈分大的,psmall指向辈分小的

PNode p1 = NULL, p2 = NULL, pbig = NULL, psmall = NULL;

int differ = 0; //两人辈分数的差别

string title;

Label:

cout<<endl<<"输入想查询关系的两个人的名字,不想查则将两人名字输成#:"<<endl;

while(cin>>name1 && cin>>name2)

{

if(name1=="#" && name2=="#") return;

p1 = NULL; p2 = NULL; //因为程序是循环执行的,需要将上次遗留的值清掉

findPersonFlag = 0;

FindPersonMiddleOrder(root, name1, p1);

findPersonFlag = 0;

FindPersonMiddleOrder(root, name2, p2);

if(!p1 || !p2) //若有一个为空或都为空,说明至少有一个人不在家谱中,故两人无亲缘关系

{

cout<<name1<<((!p1)" 不在":" 在")<<" 家谱树中"<<endl;

cout<<name2<<((!p2)" 不在":" 在")<<" 家谱树中"<<endl;

cout<<name1<<" 和 "<<name2<<" 间没有关系"<<endl<<endl;

goto Label;

}

differ = (int)abs(p1->level - p2->level);

if(!differ) //辈分一样大

{

if(p1->sex == p2->sex)

{

if(p1->sex == "M") title = "兄弟关系";

else title = "姐妹关系";

}

else title = "兄妹(姐弟)关系";

if(p1->btr == p2->btr) //parent相同

cout<<name1<<" 和 "<<name2<<" 间是 "<<" 亲 "<<title<<endl;

else

cout<<name1<<" 和 "<<name2<<" 间是 "<<" 表 "<<title<<endl;

}

else //辈分不一样大

{

if(p1->level < p2->level) {pbig = p1; psmall = p2;}

else {pbig = p2; psmall = p1;}

switch(differ)

{

case 1:

if(psmall->btr == pbig)

title = ((pbig->sex == "M")"爸爸":"妈妈");

else

{

if(psmall->btr->btr == pbig->btr)

title = ((pbig->sex == "M")"亲叔(舅)":"亲姑(姨)");

else

title = ((pbig->sex == "M")"表叔(舅)":"表姑(姨)");

}

break;

case 2:

if(psmall->btr->btr == pbig)

title = ((pbig->sex == "M")"爷爷(姥爷)":"奶奶(姥姥)");

else

{

string tmp = ((pbig->sex == "M")"兄弟":"姐妹");

if(psmall->btr->btr->btr == pbig->btr)

title = ((psmall->btr->btr->sex == "M")"爷爷(姥爷)的亲":"奶奶(姥姥)的亲") + tmp;

else

title = ((psmall->btr->btr->sex == "M")"爷爷(姥爷)的表":"奶奶(姥姥)的表") + tmp;

}

break;

default:

string tmp2;

PNode pt = psmall;

int n = differ-2; //计算"老"字 (即grand这个字) 出现的个数

for(int i=0; i<n; ++i)

tmp2 += "老";

for(int i=0; i<differ; ++i)

pt = pt->btr;

if(pt == pbig)

title = tmp2 + ((pbig->sex == "M")"爷爷(姥爷)":"奶奶(姥姥)");

else

{

string tmp3 = ((pbig->sex == "M")"兄弟":"姐妹");

if(pt->btr == pbig->btr)

{title = tmp2 + ((pt->sex == "M")"爷爷(姥爷)的亲":"奶奶(姥姥)的亲"); title+=tmp3;}

else

{title = tmp2 + ((pt->sex == "M")"爷爷(姥爷)的表":"奶奶(姥姥)的表"); title+=tmp3;}

}

break;

}

cout<<pbig->name<<" 是 "<<psmall->name<<" 的 "<<title<<endl;

}

goto Label;

}

}

/

function: 后序遍历销毁此二叉树,释放节点占用的内存空间

/

void DestroyBiTreePostOrder(PNode pn)

{

if(!pn) return;

DestroyBiTreePostOrder(pn->l_child);

DestroyBiTreePostOrder(pn->r_brother);

delete pn;

}

世系图是家谱中的主体部分,又称为世系考、世系记等。这部分内容为所有中国家谱共有,因而成为家谱区别于正史、地方志的最明显的标志。世系表有两种格式比较常见。

一、宝塔式图谱:

这一图谱形式何人所创、创于何时目前尚无定论,不过最迟已在南宋时出现了,因此很可能也是北宋人的产品。

现在在宝塔式图谱的基础上发展了很多种类,如

1、树系图谱:(典型的宝塔式)

2、线形图谱(平行谱) 一世 二世 三世 四世 五世

二、牒记式图谱

这一图谱的特点是分别按世代以文字叙述先人的事迹,既不用线条,也不用图表。

当然还有很多谱系图如龙凤家谱(其结构是中间是世代,左右两侧分别是祖妣、祖考,也就是父母亲。因此,称此种家谱为龙凤家谱),欧阳修、苏洵所发明的欧式图谱和苏式图谱等等,但基本上都是在以上两种谱系图的基础上发展起来的,区别不是很大。常用的谱系图以树系图谱和线索图谱最为常见。

传统手绘世系图有很多弊端,为此家谱国际研究大量绘世系图方法创新性的编制一套软件解决手绘世系图的难题。通过输入父子关系,直接一键生成世系图,管理员可以随时增添删改人名,省去了传统修谱大量的画线时间。

同时家谱国际免费为各个家族提供一个手机端的使用平台,在手机端轻松查阅世系关系。

还能给去世的亲人在平台上建立纪念馆,也可以将有关的传记、视频、文选等上传到此平台分类管理保存,以方便家族的成员缅怀先人。

在此平台给先人设的纪念堂可以送鲜花、花圈、香烛等,以表缅怀之情,这样就可以突破地域的限制,在清明节、先人祭日、中元节、寒衣节、春节前给去世的亲人奉上香烛,传承孝爱文化。

“家风”(family style)又称门风,指的是家庭或家族世代相传的风尚、生活作风,即一个家庭当中的风气。家风是给世代家族成员树立的价值准则。下面我给大家带来弘扬好家风家训主题活动方案,希望大家喜欢!

弘扬好家风家训主题活动方案1

家风家训家规是中华 传统 文化 的现代传承,是每个 家庭 教育 智慧的生动体现,也是一个社会的价值缩影,良好的家风家规家训是社会主义核心价值观在现实生活中的直观体现。为进一步深化家庭文化建设,引领广大家庭成员树立夫妻和睦、尊老爱幼、科学教子、勤俭持家、邻里互助的文明理念,弘扬文明新风尚,培育和践行社会主义核心价值观,根据市委文明办、市教育局、市妇联的部署,区委文明办、区教育局、区妇联决定在全区广大家庭中开展“好家风好家训”作品征集及宣传展示活动,现将有关事项通知如下:

一、活动主题

传承文明家风 争当最美家庭

二、活动对象

全区家庭均可参加

三、活动时间

20__年4月25日—6月25日

四、活动内容

1、作品征集。作品要求紧扣活动主题,围绕“家风家训家规”中有关和谐、孝道、劝学、向善、勤俭、励志、修养等方面的内容来展开,既能够反映我国传统美德,又要符合社会主义核心价值观的要求。家训家规、家风 故事 可以是祖上代代相传的家风家训家规,或是自己原创的用于教育子女、警励后人的作品,严禁抄袭。作品内容包含三个部分:

一是“我的家规家训”。要求作品原创、语言精炼,形式简明,富有内涵,健康向上,便于传诵,字数不超50字。

二是“我的家风故事”。要求明确家风故事产生的时间、背景和效果等,字数不超1000字。

三是“名人家风家训创意作品”。作品围绕福州名人家风家训故事,重在展现传统文化的传承。参展作品不限形式(书、画、手工制品等)、题材和尺寸,要求内容健康,积极向上,以家庭为单位报送,倡导亲子合作完成,富有艺术表现力。

2、组织评比。来稿由区委文明办、区教育局、区妇联筛选后,由区妇联统一报送市妇联,推荐参加福州市“好家风好家训”作品征集及宣传展示活动。福州市将评选出优秀家规家训,汇编《好家规好家训集锦》,并在有关媒体上展播;组织书画 爱好 者,将征集到的优秀家规家训进行书画创作;在20__年福州市第__届“海峡 青年节 ”期间,参与海峡两岸家庭教育交流活动现场展出;在新建成的福州市海峡妇女 儿童 活动中心展厅展出,共同营造“人人崇尚家庭美德、家家点赞良好家风”的浓厚氛围。

五、活动要求

1、高度重视,精心组织。各单位要精心组织,广泛发动,深入挖掘,积极选送优秀作品参加征集活动。要深入社区、广大家庭中,并积极发动相关单位力量,开展广泛的征集活动,切实征集到反映本地历史文化传统和当代特色的好家风好家训作品。

2、认真筛选,及时报送。按照本级评选、逐级上报的原则,在广泛征集的基础上,各街(镇)妇联、区直机关各妇女组织负责对征集作品进行审核把关后,精选若干条(好家规家训不少于3条,好家风故事不少于1个,名人家风家训创意作品不少于1件),于6月26日前将作品以电子版形式报送至区妇联。

3、广泛宣传,营造氛围。各街(镇)妇联、区直各有关单位、各学校要以议家风、晒家训、传美德为主要形式,组织开展“好家风好家训”作品征集及宣传展示活动,发动群众分享好家风、传颂好家训,展现家庭文明风采。在社区“妇女之家”设置“好家风好家训”展示台,组织开展“好家风好家训”大讨论和家规家训知识讲座。在鼓楼政务网上开设专题专栏,选登好家风、好家训作品。大力选树、宣传和展示传承良好家风的典型家庭,为群众树立践行美德、崇德向善的身边榜样。

弘扬好家风家训主题活动方案2

一、活动主题

立家训、树家风、助扶贫

二、活动内容

(一)征集评选

各帮扶单位和驻村工作队要组织动员帮扶村在全村广泛开展好家风好家训征集评选活动。家风家训可以是世代传承的家风家训、治家格言的良好家风,也可以是现代家庭的家训家规。家风家训本着亦古亦今、古今结合、以今为主的原则,组织广大家庭通过长辈口述、家人共议等形式,广泛挖掘、整理、编写,要求贴近生活,健康向上,语言得体,特色鲜明,富有内涵,便于传诵。

(二)宣传展示

1、设计铭牌。各村可以通过制作、组织书法家集中撰写统一设计特色鲜明的家风家训铭牌,悬挂在村民家庭门楣厅堂之上,让好家风、好家训在千家万户生根发芽,掀起形成社会好民风,助力美丽乡村建设的热潮。

2、评选展示。各村可在普遍征集的基础上,在本村开展好家风、好家训评选活动,将评选出的好家风、好家训通过文化广场、文化墙、好人榜等方式进行展示,有效的宣传“立家训、树家风、助扶贫”活动成果。

3、演绎传诵。各村可组织文艺工作者、民间艺术团体和广大村民将家风家训故事改编成快板、诗词、戏曲等文艺节目,在惠民活动、民俗活动、传统节日中讲给群众听、演给群众看,助推好家风、好家训的感染力和影响力。

三、活动要求

(一)加强组织领导。各帮扶单位、驻村工作队要从培育和践行社会主义核心价值观、提高公民道德水平的高度,充分认识开展这项活动的重要意义,积极指导、组织帮扶村结合实际,制定具体方案,明确工作任务,及时部署落实,确保活动有序推进。

(二)做好宣传 总结 。积极通过新闻媒体、微信、美篇等媒介,广泛宣传活动情况,特别是注重选树一批积极参与立家训、树家风活动的贫困群众先进典型,总结一批好 经验 、好做法,充分展示活动成果。

(三)注重结合融入。要把本次活动同社会主义核心价值观宣传教育、“五个美丽”、乡村振兴战略等工作结合起来,与道德模范、文明家庭、最美家庭等评选活动结合起来,使活动过程成为弘扬家庭美德、培育良好家风、树立良好社会风气的过程,成为扶贫与扶志、扶智有机结合的过程,以实实在在的工作推进群众精神文明建设。

弘扬好家风家训主题活动方案3

成长中的__三中秉承“上善教育”特色校园文化,坚持“人文滋养,个性成长”的德育理念,从“修、齐、治、平”四个维度形成校本课程体系,其中“齐”维度将《家风家训家规家谱》纳入必修课程。

姓氏,起源于母系氏族社会。古训“慎终追远,民德归厚也”,自古就有讲孝道,讲寻根祭祖,讲求统一的美德,其风格特美。为大力弘扬家庭美德,充分发挥家庭教育在未成年人思想道德建设中的基础作用,培育和践行社会主义核心价值观,丰富“齐”维度校本课程内涵,__三中决定在20__年寒假期间开展“寻根问祖家谱探源”主题实践活动。

一、活动目的

中国的家谱一般都有家规族训,对于规范人生和教育子弟有着积极的意义。家风家训家规是家庭教育的重要内容,也是培育和践行社会主义核心价值观的重要载体,培育好家风、恪守好家训、践行好家规,对于学生健全人格、增强家族荣誉感和家庭责任感有着重要的意义。本次主题实践活动旨在发动广大学生,在家长的共同参与下,寻根问祖探索家谱中的“上善教育”元素,倡导主流价值,培育文明风尚,使其在活动中受到滋养,得到成长。

二、活动对象

全校学生及其家长。

三、活动内容及方式

(一)活动内容。

活动以学生和家长共同寻根问祖、家谱探源为主要内容,探源本家族世代传承的家谱、阅读《百家姓》、绘制家谱树、说家族名人故事等。

(二)活动形式。

1探一探家谱源。 春节 期间,全家通过 拜访 长辈或查找文献或网上收集资料,了解家谱文化起源、家族姓氏来源、发展历史、中国姓氏的有趣故事等,探寻家族源头。

2读一读百家姓。寒假期间,邀请父母长辈开展一次家庭读书活动,一起了解《百家姓》的成书背景,知晓《百家姓》姓氏排序的原因。

3画一画家谱树。了解家谱的基本含义、基本记述格式,清楚自家史、家族亲戚后,手绘或电子制作家族近五代家谱树。

4晒一晒家族事。在认真寻根问祖、家谱探源过程中找出家族中你认为最典型的一位名人,撰写一篇家族名人故事,并主动向家长征询意见,一起修改完善。

四、相关要求

(一)高度重视。各班师生要高度重视本次活动,将其作为培育和践行社会主义核心价值观和优化学生思想道德建设环境的重要载体加以认真落实。

(二)精心组织。各班师生按照学校的 实施方案 ,明确要求,合理安排好本次活动。要将“寻根问祖、家谱探源” 社会实践 活动作为寒假作业,及时告知家长,邀请家长共同完成。

(三)认真总结。20__年春季开学后,各班对活动进行认真总结,并将活动成果上交学校,上交的活动成果计入各班“步步高”评价。

(四)作业要求:全校每个学生上交一幅“家谱树”,一篇“家族名人故事”至政教处(1、纸张:A4纸;2、标题:宋体,二号,加粗,居中;3、正文:宋体,四号,首行缩进2个字符,15倍行距)。

弘扬好家风家训主题活动方案4

一、活动主题

弘扬家规家训、树立良好家风

二、活动时间

20__年8月1日—28日

三、活动内容

征集家规、家训,围绕家庭教育中和谐、孝道、劝学、劝善、勤俭、励志、修养等方面,既能够反映我国传统美德,又符合社会主义核心价值观的要求。

作品要求可以是原创或者摘录的家规、家训,采取格言、 对联 、诗词、警句等形式,语言精练,特色鲜明,富有内涵,便于传诵。

四、活动流程

1、宣传动员阶段(8月1日至8月7日)

本次征评活动由研究院工会组织实施,各工会小组要精心组织,广泛发动,深入挖掘,积极组织职工报送优秀作品参加征集活动。

2、作品征集阶段(8月8日至8月21日)

本次征集活动利用工会微信公众号平台开展。

参与途径:进入微信→点击关注“北京市建筑工程研究院工会”公众号→点击征集家规家训链接参与。

3、作品评选阶段(8月22日至8月28日)

由各部门工会小组长组成评委会,对征集作品进行匿名投票评选出“十佳家规家训”。

以“家规家训”为主题,标准如下:

a、原创度高,联系实际

b、导向性好,寓意深刻

c、文字畅顺,朗朗上口

五、奖励办法

本次征集“好家规、好家训”的奖项分为“十佳奖”和“参与奖”,研究院工会以资鼓励。

弘扬好家风家训主题活动方案5

一、活动目的

围绕“家庭、家教、家风”,通过讲、演、唱等群众喜闻乐见、便于参与的家庭文化形式,深入挖掘、宣传展示“最美家庭”故事,让群众在传播过程中当主人、唱主角儿,以身边人、身边事,可亲可学的方式带动更多家庭在学习感悟中付诸行动,在全社会广泛传播家庭文明正能量。

二、活动时间

20__年2月--11月

三、活动主题

“我家最美”——家风故事汇

四、活动内容

(一)各区各单位根据实际情况,分别组织开展各具特色的家风故事汇活动。

(二)作品以演讲、表演类为主。表现形式可以是 事迹 宣讲、诗歌朗诵、戏剧小品、歌曲演唱等,表演时间在5分钟以内。内容突出原创。

(三)进入市级复赛的作品,需要提交活动报名表和相关材料,包括作品视频、节目创意介绍、家风家训等。

五、活动安排

(一)2-8月,各区各单位选拔阶段。在各区各单位

分别组织活动的基础上,各区妇联推荐2-3个作品参加市级复赛,于8月19日前将活动报名表和相关材料报送至活动组委会办公室;各单位积极组织参加活动。(活动报名表见附件8)

(二)9月,市级复赛。参加市级复赛的家庭成员到现场表演,评委对节目进行点评,现场打分,最终经综合评议评出各类奖项。

(三)9-10月,专家辅导。主办单位将邀请专家对获奖节目进行辅导培训,进一步提高表现力和感染力。

(四)11月,颁奖活动。优秀作品将通过全媒体 渠道 进行展示,并拍摄制作作品光盘。

弘扬好家风家训主题活动方案相关 文章 :

★ 弘扬传承家风家训的倡议书

★ 传承好家风好家训倡议书

★ 怎么写家风家训倡议书最全范文素材系列

★ 家风家训主题演讲稿10篇

★ 好家风好家训的主题演讲稿

★ 2017年小学生家风家训的主题演讲稿

★ 传承家风家训主题演讲稿范文2017

★ 家风家训家规班会主题演讲稿三分钟

★ 《家风家训家规班会主题演讲稿三分钟doc》

★ 家风家训主题演讲稿范文

“族脉家谱”是一个免费的个人单机版家谱编纂软件。它继承了“族脉网”原有网络版上的主要服务功能,同时充分利用了个人电脑上的各项特有功能,实现了为用户提供了一个兼而有之、取长补短的第二服务平台。“族脉家谱”软件是利用近几年来最新个人电脑上的软件技术制作的。它无论在数据的存储、处理、以及用户编纂家谱的流程上都做了精心细致的设计。与网络版服务相比,这款单机版软件的长处是反应速度能大大提高了许多,这样在编纂家谱时的用户体验便得到明显改善。结合“族脉网”的网络服务,我们的用户可以实现所有家谱编纂的功能需求,如无限排版打印、支持多种日历输入、发表抒怀、撰写文选、与亲友交流和设立纪念馆,等等。

族脉家谱软件具有如下特点

1.家谱成员的详细录入:包括世号、字辈、成员、多配偶资料、成员重大事记以及家谱成员好友的资料。

2.家谱成员的操作功能:包括编辑、删除、添加成员,拷贝及粘贴功能。

3.搜索成员功能:输入家谱成员的关键词查找你需要的成员。

4.统计功能:软件中会自动统计家谱总人数、总辈份、性别、在世人数以及辞世人数。

5.家谱数据加密功能保证安全性。

6.名人集锦:可以突出家谱成员中有重大贡献的成员。

7.打印功能:将族脉家谱中的数据备份上传到族脉网中可以实现家谱的无限排版打印。

下载地址:

用二叉树实现家谱运算

C++语言: 二叉树实现的简单家谱树/ File Name: BiTreecpp Author: Geng Lequn[glq2000@126com] ...
点击下载
热门文章
    确认删除?
    回到顶部