文档库 最新最全的文档下载
当前位置:文档库 › 4 家谱管理

4 家谱管理

4 家谱管理
4 家谱管理

家谱管理

1 项目简介

家谱(或称族谱)是一种以表谱形式,记载一个以血缘关系为主体的家族世系繁衍和重要人物事迹的特殊图书体裁。家谱是中国特有的文化遗产,是中华民族的三大文献(国史,地志,族谱)之一,属珍贵的人文资料,对于历史学、民俗学、人口学、社会学和经济学的深入研究,均有其不可替代的独特功能。本项目对家谱管理进行简单的模拟,以实现查看祖先和子孙个人信息、插入家族成员、删除家族成员等功能。

2 设计思路

本项目的实质是完成对家谱成员信息的建立、查找、插入、修改、删除等功能,可以首先定义家族成员的数据结构,然后将每个功能写成一个函数来完成对数据的操作,最后完成主函数以验证各个函数功能并得出运行结果。

3 数据结构

因为家族中的成员之间存在一个对多个的层次结构关系,所以不能用上面讲的线性表来表示。家谱从形状上看像一颗倒长的树,所以用树结构来表示家谱比较适合。树型结构是一类非常重要的非线性数据结构,直观看来,树是以分支关系定义的层次结构。

可以二叉链表作为树的存储结构,链表中的两个链域分别指向该结点的第一个孩子结点和下一个兄弟结点,故该表示法又称二叉树表示法,或孩子兄弟表示法。孩子兄弟表示法是一种链式存储结构,它通过描述每个结点的一个孩子和兄弟信息来反映结点之间的层次关系,其具体的结点结构为:

其中,firstchild为指向该结点第一个孩子的指针,nextsibling 为指向该结点下一个兄弟,elem是数据元素内容,举例如下:

其存储形式定义如下:

typedefstructCSLinklist{

Elemtypedata;

structCSLinklist *firstchild,*nextsibling; } CSLinklist,*CSTree;

大槐树移民家谱三

大槐树移民家谱三 1.明吉陈墓地买地券文 维大明隆庆元年(一五六七年)九月一日,岁次丁卯九月壬子朔,鸣吠破土立券,十一月初 九日庚申安葬据直隶大名府开州榆林里,孝男都察院右佥都御史吉澄伏缘,父敕封监察御史 吉陈奄逝,改卜茔坟,夙夜忧思,不遑所厝,遂令日者择此高原,来去朝迎地,占袭吉其地 属本宅东北甲字之原坤宫发脉,艮位生龙以始,生山为主官,国山为案放,元辰之水口左抱 右掩,四势有情,堪为宅兆,今备钱财九万九千九百九十九贯文买到墓地一方,南北长二十步,东西阔一十七步,三分半积地一亩四分东至青龙,西至白虎,南至朱雀,北至玄武,内 方勾陈,管分擘四,域丘承,墓伯封步,界畔道路,将军齐整,阡陌致使千秋百载永无殃处,若有干犯,并令将军亭长缚付河伯,今备牲牢酒脯百味香新共为信契,财地交相各已分付, 令工匠修茔安厝已后永保休吉。 知见人岁主传送之神,月主河魁之神代保人,今日直符从魁之神,故气邪精不得干扰,先有 居者永避,万里若违此约地府主吏自当其祸,助葬主里外,存亡悉皆安吉,急急如五帝使者 女青律令,券立二本,一本奉付后土氏之神,一本乞付墓中,令亡父陈收把准备付身永远, 照用今分券背上书合同二字,故气伏尸永不侵争。 2.明吉浈墓地买地券文 维隆庆三年(一五六九年)九月二十四日岁次己巳九月辛未朔,越二十四甲午吉日破土立券,十月二十庚申吉日安葬直隶大名府开州榆林里,在州迤东榆林村居住,孤子吉大典等伏缘, 父浈奄逝欲行归葬,祖茔穴路窄狭,安葬未便,夙夜忧思不遑所厝。遂令日者更新,扦于祖 茔之东北,以自然山为主,化生山为案,放勾陈之水口,左抱右掩四势有情,来去潮迎地, 占袭吉地属家望巽字之原堪为茔兆悌已。出备钱财九万九千九百九十贯文,买到茔地一方, 南北长二十步,东西阔一十七步,三分五厘,积得三百四十七步,该地一亩四分三厘七毫五糸,合得四神捧穴俱全。东至青龙,西至白虎,南至朱雀,北至玄武,内方勾陈,管分擘四,域丘承(丞),墓伯封步,界畔道路,将军齐整,阡陌致使千年百载永无殃咎,若有干犯, 垦乞将军亭长会议河伯。今备牲牢酒脯香薪共为信契,财地交相各已分付,令工匠修理之后 永保安吉,知见神岁月主代保神,今日直符太乙之神令,故气邪精勿得干扰,先有居者永避 万里,若违是约地府主吏自有垂鉴,助葬主里外,存亡悉皆安吉,急急如五帝使者女青律令 券立二本,一本奉上后土阴君,一本乞付墓中令亡父吉浈收把,准备付身永远照用。今分券 背上书合同二字,令故气伏尸永不侵争。大明隆庆三年九月二十四甲午吉旦建日直太乙之神,代保神年直神后之神,月直小吉之神。该碑碑额上书“追念祖德”,右联“祖德高如日月永垂 照耀”,左联“宗功大似泰山古今常存”。明故吉公讳伦字天叙别号乐素德配张老安人之墓(碑阴)。 3.高家村高氏碑谱记(河南) 2004年2月7日摄于河南省清丰县仙庄乡高家村,该族谱记载:“尝读十世再纵堂,祖庠生讳瀚所作,祖茔墓碑有云:始祖讳九山西平阳府洪洞县黄耄藕丝村人也,于大明洪武时奉 旨迁兹,披云露斩荆棘而遂家于斯焉,越二世而曾孙得预书香其后或同时发科或继世连芳子 姓繁庶前后两村不下百十余家,惟天派不一,继继绳绳连绵如瓜瓞迁居他里者近有辛庄集天 云寺董村王毛店等处,外县则有广平张村寺,开州石墓头,观邑百家寨,河南白杨县,此自 明时而已然矣,至今又有迁居英林里,楚家村,濮州高寺村,陈家马场村,范县北关,观城 屯里与张家娄村,藉非始祖积德累仁乌能如此蕃衍哉,然自始祖以来二十一世,五百余年独 于家谱未之修焉不诚一大憾事乎,虽有五世祖古坡公立一世系碑文上自始祖下至七世条分缕晰,但未载迁居者自几世迁出者为何人况七世以下之祖先独予东坟与西坟有碑文可考,神主

家谱管理实验报告

Project 3 家谱管理

一、题目 用树型结构实现家族成员信息管理,(如建立、删除、查询、统计、打印等) 二、数据结构与算法 1.定义树结点node { string name; node *left; node *right; string sex;//male or female int num;//结点编号 node() { name = ""; left = right = NULL; num = 0; sex = "male"; } }; 2.定义class tree{};实现不同对树的操作 其中,以static int count记录节点总数; 以static int height记录树高度; 以node* root作为头指针; 以node* arr[maxnode]将每个节点的指针记录在数组里。 3.对于该树的操作: a. 创建树: 首先此project中树由男性为根结点。男性的左孩子是其兄弟,右孩子是其第一任妻子,第一任妻子的右孩子是其第二任妻子,每个妻子的左孩子是其与这位妻子的孩子。如此递归生成家谱。 输入时,用0表示左孩子,1表示右孩子,以1010等的字符串输入结点位置来创造结点。创建后用函数cheak来检验创造的树是否正确,具体来说就是避免创建树时出现有结点没有父结点的情况。 b.删除结点:以结点的name成员搜索结点,删除结点及其子树。 c.查询结点:以结点的name成员搜索结点,打印该结点的父母兄弟、妻 子、男孩。 d.统计函数:统计家谱总数。本project中通过#define定义打印屏幕宽 度screen_width为96,最多结点maxnode为32,因此树高度不超过5层,总数count不超过32. (linux下测试,终端宽度可以任意,windows下的话只能是80) e.打印:采用广度优先搜索遍历来打印树。

大槐树迁民之--李姓

大槐树李(lǐ) 姓 系承皋陶, 始祖为利贞、李耳, 为我国当代百家大姓第一姓。明朝洪洞大槐树移民李氏始祖为平阳府、洪洞县、赵城县等籍人氏, 明初奉旨在洪洞大槐树集中迁往异地, 至清末其后裔分布: 河南、山东、河北、北京、天津、陕西、甘肃、宁夏、安徽、江苏、湖北、湖南、广西、内蒙、辽宁、吉林、黑龙江、晋中、晋北、晋东南。李姓的记载最早见于东汉《风俗通·姓氏篇》。〔姓源〕其姓源主要有三: ①源自嬴姓。据《元和姓纂》、《北史》、《新唐书·宰相世系表》记载, 相传上古五帝之一的高阳氏颛顼帝生于若水, 居于帝丘。其生有儿子大业, 大业生子女华, 女华再生皋陶, 因生在曲阜偃地, 得偃姓。帝尧时, 皋陶曾担任大理官。生有儿子伯益, 被赐为嬴姓, 为古代嬴姓各族的祖先。伯益生恩成, 后子孙历虞舜, 从夏朝到商朝, 世代都担任大理的官职, 因此皋陶的后裔按照当时的社会习惯, 以官为氏, 就用官名中的理字作为姓。到了商纣王时, 理姓家族传到了理徵, 理徵字德灵, 因敢于直言向纣王进谏而为纣王所不容, 最后被纣王处死。理徵的妻子陈国契和氏带着儿子利贞逃到古伊国的旧址伊侯之墟, 靠吃木子即李子的果实充饥才能得以活命, 于是就理姓改为李姓。另一种说法: 周之前未见有李氏, 自从有老子姓李名耳, 因理、李两字古音相通, 老子为利贞的裔孙, 因祖上世世代代为理官, 便也以李为姓。李氏是始于李耳称姓的, 正史中记载的第一个李姓人物是李耳。②源自他族改姓。据《古今姓氏书辨证》记载, 又聊城的李姓有两支, 一支世代担任契丹族的酋长, 后来迁到京兆; 另一支为奚族人, 姓氏不明。这两支族人都由唐王赐为李姓。又鸡田的李姓, 原为河曲的一个部落, 后来这个部落的光进作了唐朝的节度使, 于是唐王赐光进姓李; 又渤海国是唐朝时人建立了政权, 渤海人茹常作了朔方的将领, 因屡立战功被赐姓李, 并改名为嘉庆。③源自他姓所改。据《通志·氏族略》记载, 唐时有名叫董秦的, 是幽州蓟地人, 从叛将史思明的军队中突围出来, 唐朝大将李光弼将他召到国都长安, 唐王赐他姓李; 西域也有李姓。唐肃宗乾元元年, 西域匿识国国王来朝见唐王, 唐肃宗赐他姓李。另据《魏书·官氏志》记载, 北魏鲜卑族的复姓叱李氏, 后改为汉姓单姓李。又同州蒲城人郭子和与他的弟弟子政、子端、子升一起归附唐朝, 唐王赐他姓李。〔郡望〕李姓的郡望主要有陇西郡、赵郡、顿丘郡、渤海郡、襄城郡、江夏郡、中山郡、广汉郡等。陇西郡: 战国时秦昭襄王二十七年设置, 属今甘肃省东乡、陇西地区。治所在甘肃临洮。〔堂号〕李氏的堂号主要有陇西、赵郡、平棘。陇西堂:因为李氏望出陇西郡( 今甘肃的兰州、巩昌、秦州一带) 。〔堂联〕李姓的堂联有: 陇西望族; 北海名流( 李邕) 。卫公勋业( 李靖) ; 元礼门墙( 李膺) 。经传道德( 李耳) ; 名重谪仙( 李白) 。家藏邺架( 李泌) ; 召赴玉楼( 李贺) 。居士词犹传漱江( 李清照) ; 娘子军莫与争锋( 平阳公主) 。狂歌痛饮双仙骨( 李白) ; 索句呕心一锦囊( 李贺) 。木荣花绽展春色; 子孝孙贤传嘉风( 木子为李) 。岷江水利千年颂( 李冰) ; 昌谷诗风万里香( 李贺) 。诗礼趋庭, 人羡邺侯卷轴( 李泌) ; 忠贞体国, 世瞻元礼肃墙( 李膺) 。世系考春秋, 御史名官、东鲁圣人曾问礼( 李耳) ; 渊源溯唐代, 翰林著绩、玄宗皇帝也求诗( 李白) ; 鸣凤朝阳, 谏诤均推御史( 李善感) ; 宫袍带月, 神气咸饮谪仙( 李白) 。田可耕, 桑可蚕, 书可读, 袭誉传家至宝( 李袭誉) ; 战则胜, 攻则取, 守则固, 文忠开国殊勋( 李文忠) 。胪唱儿孙三百辈; 经传道德五千言( 李氏祠联) 。楷模听松风, 敢与龙门望第; 文章标花萼, 莫忘鹿洞遗规( 李氏祠联) 。玉炉修炼延年药; 真道兴诚益寿丹( 李耳说经台联) 。匡山怀哲士; 青莲慕奇才( 李白祠联) 。新添十竹皆紫玉;恰对九峰如画屏( 李兆洛撰书联) 。铁肩担道义; 妙手著文章( 李大钊撰书联) 。〔名人〕九九版《辞海》收录李氏329 例,《中国人名大辞典》收录李氏1806 例,《中国历代人名大辞典》收录2774 例。李姓的历史名人古代有伟大哲学家、道学派创始人李聃, 即老子; 战国时赵国有名将李牧, 秦蜀郡太守、都江堰的建造者、古水利专家李冰; 两汉有飞将军李广; 随末李渊、李世民建立唐朝; 唐代名将军李靖,著名诗人李白、李贺、李商隐; 唐末名将李克用, 克用之子、后唐始主李存勋; 五代南唐开国皇帝李日升; 南唐后主著名词人有李煜; 明代有哲学家李贽; 明末有农民起义领

数据结构家谱管理系统范本

数据结构家谱管理 系统

宁波大红鹰学院 信息工程学院 课 程 设 计 报 告 项目名 家谱查询系统 称: 白钰琦 项目组 长: 徐程凯、徐海域、项鸿伟 项目成 员: 10计科1班 班级名 称: 计算机科学与技术 专业名 称: 完成时间: 12月1日 信息工程学院制 目录 一、案例描述 ............................................................ 错误!未定义书签。 1、总体描述 ....................................................... 错误!未定义书签。 2、模块描述 ....................................................... 错误!未定义书签。

二、设计思路 ............................................................ 错误!未定义书签。 三、程序设计 ............................................................ 错误!未定义书签。 1、数据结构描述................................................ 错误!未定义书签。 2、主函数及其流程图........................................ 错误!未定义书签。 3、源程序 ........................................................... 错误!未定义书签。 四、调试与分析 ........................................................ 错误!未定义书签。 1、主菜单 ........................................................... 错误!未定义书签。 2、显示家谱信息................................................ 错误!未定义书签。 3、显示家谱中第n代人所有信息 .................... 错误!未定义书签。 4、按姓名查找某人并相应输出 ........................ 错误!未定义书签。 5、按出生日期查找家谱成员信息 .................... 错误!未定义书签。 6、为家谱中成员添加孩子信息 ........................ 错误!未定义书签。 7、为家谱中成员添加妻子信息 ........................ 错误!未定义书签。 8、删除家谱中成员及其后代信息 .................... 错误!未定义书签。 9、修改家谱中成员信息.................................... 错误!未定义书签。 10、确定家谱中两个成员关系 .......................... 错误!未定义书签。 11、按出生年月排序家谱 .................................. 错误!未定义书签。 五、设计总结 ............................................................ 错误!未定义书签。 1、完成情况 ....................................................... 错误!未定义书签。 2、心得体会 ....................................................... 错误!未定义书签。

家谱管理系统的源代码

#include #include #include #include struct per{ int data; char name[20]; char brith[20]; char marry; char address[20]; char live; char dietime[20]; char parent[20]; int generation; int child[10]; int numberchild; per(){ for(int i=0;i<20;i++) name[i]='\0'; for(i=0;i<20;i++)

brith[i]='\0'; for(i=0;i<20;i++) address[i]='\0'; for(i=0;i<20;i++) dietime[i]='\0'; for(i=0;i<10;i++) child[i]=0; for(i=0;i<20;i++) parent[i]='\0'; live='\0'; marry='\0'; data=-10; generation=0; numberchild=0; } }; void setupinfo(per person[]); void display(per person[],int&); void displayhome(per person[],int&); void displayinfo(per person[],int&); void namesearch(per person[],int&);

数据结构树的实现实验报告

数据结构设计性实验报告 课程名称_____ ____ 题目名称 学生学院 专业班级 学号 学生姓名 指导教师 2010 年 7 月 6 日

抽象数据类型:树的实现 一.需求分析 树形结构是一类重要的非线性数据结构,其中以树和二叉树最为常用,直观来看,树是以分支关系定义的内部结构。树的结构在客观世界广泛存在,如人类社会的族谱和各种社会组织机构都可以用树来形象表示。树在计算机领域中也得广泛应用,如在编译程序中,可用树来表示源程序的语法结构,又如在数据库系统中,树形结构也是信息的重要组织形式之一。 二.实验目的 对某个具体的抽象数据类型,运用课程所学的知识和方法,设计合理的数据结构,并在此基础上实现该抽象数据类型的全部基本操作。通过本设计性实验,检验所学知识和能力,发现学习中存在的问题。进而达到熟练地运用本课程中的基础知识及技术的目的。 三.实验环境 1、硬件:PC机 2、软件:Microsoft Visual C++ 6.0 四.设计说明 本程序采用树的二叉链表(孩子指针-兄弟指针-双亲指针)存储表示,以下是树的结构定义和基本操作: ADT Tree{ 数据对象D:D是具有相同特性的数据元素的集合。 数据关系R: 若D为空集,则称为空树; 若D仅含有一个数据元素,则R为空集,否则R={H},H是如下二元关系: (1) 在D中存在唯一的称为根的数据元素root,它在关系H下无前驱; (2) 若D-{root}≠NULL,则存在D-{root}的一个划分D1,D2,D3, …,Dm(m>0),对于任意j ≠k(1≤j,k≤m)有Dj∩Dk=NULL,且对任意的i(1≤i≤m),唯一存在数据元素xi∈Di有∈H; (3) 对应于D-{root}的划分,H-{,…,}有唯一的一个划分H1,H2,…,Hm(m>0),对任意j≠k(1≤j,k≤m)有Hj∩Hk=NULL,且对任意i(1≤i≤m),Hi是Di 上的二元关系,(Di,{Hi})是一棵符合本定义的树,称为根root的子树。 基本操作P: InitTree(&T); 操作结果:构造空树T。 DestroyTree(&T); 初始条件:树T存在。 操作结果:销毁树T。 CreateTree(&T,definition); 初始条件:definition给出树T的定义。 操作结果:按definition构造树T。 ClearTree(&T);

洪洞大槐树移民在各地区的分布详情

洪洞大槐树移民在各地区的分布详情 洪洞大槐树移民在河南地区的分布详情: 河南省简称豫,地处黄河中下游、华中地区,向有“中原”、“中州”之称,元属河南江北行中书省,明置河南布政使司,辖八府,一直隶州,十一属州,九十六县。(《明史·地理志》)元朝末年,河南是兵荒天灾的重点地区,明初该地区土地荒芜,人口稀少,到处都是一片残景,朱元璋说:“今丧乱之后,中原草莽,人民稀少。”又说:“中原诸州,元季战争,受祸最惨,积骸成丘,居民鲜少。”据成化版<河南省志>载,洪武年间,在河南所辖十府十二州八十八县中,有十三个州县,户数都在一千零一户之下。山西与河南邻近,河南地广人稀,山西地狭人众,河南自然是山西移民的重点地区之一。据历史文献记载,洪洞大槐树移民迁于彰德府、怀庆府、开封府、卫辉府、大名府、归德府者居多,其它河南府、汝宁府、南阳府也不少。自山西往河南移民的次数也为最多,主要为洪武年间所迁,其次为永乐年间所迁。从时间上看,早在洪武二年就有向河南的移民,民国二十四年李敏纂修的《汲县志·大事记》里说:“士人传闻则以为洪武二年(移民)”。汲县《李氏族谱》亦载:“盛,明洪武二年自山西泽州府凤台县头村迁汲。”民国二十二年《孟县志-大事记》载:“明洪武三年,徙山西民于河北,而迁至孟州者十九,皆山西洪洞籍。”从《明史》、《明实录》的记载看,洪武年间,二十一年八月,二十二年九月,二十五年十二月,三次移民,永乐年间元年八月一次移民,共四次大批的往河南地区移民。至于小批的则有鹿邑县《刘氏家谱》载:“始祖原籍山西省洪洞县枣林庄,明洪武二十年迁至河南归德府鹿邑县西南二十五里褚固堆村。”偃师县游殿村道光年间《滑氏家谱》载:“吾滑氏聚族邙上,自明洪武六年由山西迁徙而来,至今四百余载。”洛宁县城关余庆村乾隆九年《全翁李公墓志铭》记载:“追溯古籍,洪洞县其桑梓焉,前明太祖三年十月诏迁豫。”洛阳市马营村《李氏墓碑》记载:“公生山西洪洞县大槐树村人也,至洪武三年迁居河西马营村”。辉县穆营村《穆氏家谱》载:“穆氏于明永乐年间自山西平阳府洪洞县迁穆家营。”温县招贤村《牛氏家谱》记载:“始祖牛鹏于永乐四年由山西平阳府洪洞县迁温。”舞阳县王楼村咸丰四年《王氏祖碑》载:“祖原籍山西洪洞大槐树,自明初迁民,有诏兄弟三人,各挈铜佛相居于此,建修楼房,因名村日三楼。”以上家谱、碑文对明朝洪洞移民始祖迁往何地作了详尽的记载。 据郑州大学历史研究所王兴亚教授《明初山西民到河南考述》一文所载,山西洪洞移民分布大名府所属诸县:清丰、南乐、内黄、濮阳、滑、浚、长垣等县。卫辉府所属诸县:汲、怍城、新乡、获嘉、淇县、辉县。怀庆府所属:河内、修武、济源、温、孟县。开封府所属六州,三十六县,包括后来的归德府、南阳府所属诸县。民国版《新安县志·民族》记载:“新安率为汉族,其氏族之由来,咸云迁自山西洪洞。一有谱牒足证者,如:横山吕:洪武初由洪洞迁入新安;芦院裴:山西闻喜迁新安芦院。回龙山(俗名寺坡山)张:……于恭帝末迁山西晋阳洪洞,六世孙琮,于明永乐初随文恕迁洛阳}廛河里,清初迁于新安。克昌邵:系明永乐由洪洞迁新安。辛庄孙:洪武初孙廷,由洪洞迁新安。城内许:洪武初许启伦由洪洞迁新安。横沟常:洪武初常福由洪洞迁新安。侯沟侯:先由云南迁洪洞,洪武初由洪洞迁新安。北关龚:洪武初龚大郎由山西夷山迁新安。邱沟邱:其先山西翼城人,元末邱德仲始迁新安。王庄王:南宋时由山西洪洞迁往河南新安下石井,洪武初王十二始徙王庄。韦庄翟:洪武初翟宗南自洪洞迁新安。庙头邓:洪武初邓奈由洪洞迁新安。城西街郭:洪武初郭奈由洪洞迁新安。东阳镇兰:洪武初兰锦由洪洞迁新安。石寺刘:洪武元年刘义从洪洞迁新安。石寺柳:洪武初柳旺由洪洞迁新安。石寺贾:贾政元末由洪洞迁渑池,洪武初迁新安。石井街:洪武二年于大公由洪洞迁新安。石井徐:洪武二年同于姓由洪洞迁新安时为姻亲。石井赵:系出宋某节度使后,元末由山西垣曲大赵村迁渑池石门即今之赵沟,又徙新安。羊义张:张聪于明初山西闻喜迁新安。高平寨郭:洪武初由洪洞迁邑西之南庄,明末郭三光徙高平寨。火虫驿王:洪武中王兴由山西洪洞迁新安。滩子沟介:元末介老八由山西介休迁滩子沟。西关董:洪武初由山西高平迁芮城后徙新安。骆岭李:洪武初由洪洞迁新安骆岭又迁栗园。车箱马:洪武初由洪洞迁罗家河,又徙济远之毛田,后徙新安盐仓,又徙车箱沟。流水沟冯:明初冯自勉兄弟三人由洪洞迁新安。王岭王:明初由洪洞迁新安。

家谱管理系统1(1)

《软件综合设计》 家谱管理系统 院系:计算机科学技术学院二系 班级:计11 – 2班 姓名:刘文秀(15) 合作者:姜雪(05) 、岳奉宜(33) 指导教师:薛曼玲 2013 年 12 月 01 日

《软件综合设计》任务书 一、题目:家谱管理系统 二、设计要求 (1)刘文秀(组长)、姜雪和岳奉宜组成课程设计小组。 (2)小组成员分工协作完成。要求每个成员有自己相对独立的模块,,同时要了解其他组员完成的内容。 (3)查阅相关资料,自学具体课题中涉及到的新知识。 (4)采用结构化、模块化程序设计方法设计,功能要完善,界面美观。 (5)所设计的系统应有菜单、动画和音乐。 (6)按要求写出课程设计报告,并于设计结束后1周内提交。其主要内容包括:封皮、课程设计任务书,指导教师评语与成绩、目录、概述、软件需求分析、总体设计、详细设计、程序的调试与测试、总结与体会、结束语、程序清单(带中文注释)、参考文献等。报告一律用A4纸打印,正文的中文字体为宋体,西文字体用Time New Roma,一律用小四号字,行距采用“固定值”18磅,首行缩进2字符。1级标题中文字体为黑体,西文字体为Time New Roma,采用三号字;段落为居中、段前18磅、段后12磅、行距采用“固定值”18磅,首行缩进:无,段中不分页,与下段同页。仅一级标题上目录。 三、课程设计工作量 由于是设计小组团结协作完成设计任务,一般每人的程序量在400行有效程序行以上,不得抄袭。 四、课程设计工作计划 2013年12月2日,指导教师讲课,学生根据题目准备资料,需求分析; 2013年12月3日,设计小组进行总体方案设计和任务分工; 2013年12月4日~2013年12月10日,每人完成自己承担的程序模块并通过独立编译; 2013年12月11日~12日,将各模块集成为一个完整的系统,并录入足够的数据进行调试运行; 2013年12月13日,验收、开始撰写课程设计报告; 2013年12月18日前,提交课程设计报告和软件。 指导教师签章: 教研室主任签章

洪洞大槐树移民在山东地区的分布详情

洪洞大槐树移民在山东地区的分布详情 山东省简称鲁,地处黄河下游,黄海、渤海之滨,元属中书省,明置山东布政使司,辖六府,十五属州,八十九县。(《明史-地理志》)元末明初,山东地区人口与山西地区人口不相上下,而土地面积却比山西大多了,由于元末战乱及灾荒,再加上朱元璋北伐,“靖难之役”的两次战争,靖难之役,山东军民抵抗燕军最为顽强,山东参政铁弦数败燕军于山东境内,民众也多自发抵抗燕军,南军李景隆在德州、济南地区与燕军反复拉锯作战,燕王胜后,对这些地区的民众进行了残酷的屠杀,造成山东地区“白骨露于野,千里无鸡鸣”,所以山东地区是移民的重点地区,往山东的移民洪武、永乐朝较多。在《明史》、《明实录》记载的18次移民中,往山东地区的移民记载有:洪武二十一年八月,二十五年十二月两次,永乐元年八月,永乐五年五月两次,共四次大批移民。但大量的家谱、碑文及地方志记载永乐朝为多。主要迁往东昌府、济南府、兖州府、莱州府、德州府的最多。据叶涛《移民·山东人·山东民俗》调查,在鲁西南一带,大约半数以上的村庄是明代建立的。 《滕县县志资料》记载:滕县人民政府地名办公室于1980年对全县1801个自然村作了全面的普查和考证,1983年11月东部山区8个公社划出后,滕县今存的1223个自然村地名档案材料中,通过核计其立村年代为战国以前的34个,汉代18个,隋代4上,唐代27个,宋代45个,元代45个,明代687个,清代365个,民国10个,建国后26个,无考据的4个。共1261条,其中明初立村较为集中,数量较历代为多。以现存户藏的425份族谱和碑文中,115份记载为明初迁入滕籍,225份明确记载为明洪武、永乐年间从山西洪洞县(也有记载为平阳、临汾的。按:明初平阳府治临汾,辖洪洞,为同一地区)迁发来滕者,占明代迁滕立村的50%。今全县22个乡镇,经核查均有山西洪洞移民后裔之村庄,最少的1村(党山乡),最多的25村(级索镇),一般乡镇约为10个村庄左右。从今滕县自然村1223条档案中,有碑谱确证为山西洪洞籍的225条,滕县民间广传为“问我祖先来何处?山西洪洞大槐树”。这种说法虽不尽然,亦有它的来历。以光绪三十三年《滕县乡土志·氏族》记载的滕县门户较大的望族十二姓,其中黄、张、王、侯、杨氏五族祖籍系山西洪洞县,黄氏族谱具体到喜鹊村,迁滕纪年系明初洪武间,即说明这一点,同时也说明洪洞迁民来滕后发展的大户族系所占的比重是相当可观的。滕县史志办徐文潮同志对滕县碑、谱记载洪洞迁民的情况进行了统计,其中级索镇刘沟村《刘氏族谱》,没有记载迁滕年代;永丰乡《刘氏族谱》,明初迁;泉上村《刘氏族谱》,明朝迁;前赵庄《赵氏族谱》,洪武二年迁;彭庄《赵氏族谱》,洪武年迁;韩庄,韩氏族谱》,洪武年迁;后杨岗《杨氏族谱》,洪武年迁;北杨楼《杨氏族谱》,洪武年迁;道沟《徐氏族谱》,洪武年迁;王波《王氏家谱》,洪武二年迁;子崖《王氏家谱》洪武年迁;郝屯《王氏家谱》,洪武年间迁;董庄《王氏家谱》,洪武年间迁;千佛阁《王氏家谱》,洪武年间迁;羊二庄《满氏家谱》,明初迁;前潘楼《牛王庙碑铭》,明初迁;时庄《泰山庙碑记》,洪武年间迁;翟庄《翟氏族谱》,洪武年间迁;西宗庄《宗氏族谱》,明朝迁;前杨岗《马氏家谱》,洪武年间迁;牛集《牛氏家谱》,洪武年间迁;姚庄《周氏家谱》,洪武年间迁。望冢乡小刘庄《刘氏族谱》,明初迁;邱村《邱氏族谱》,明初迁;马村《马氏家谱》,洪武年间迁;刁村《刁氏祖碑》,明初迁;西谢庄《谢氏家谱》,洪武年间迁。姜屯镇刘楼《刘氏家谱》,洪武二年迁;侯颜庄《侯氏族谱》,洪武年间迁;孙村《孙氏族谱》,洪武年间迁;大彦《孙氏家谱》,洪武年间迁;解庄《解氏祖碑》,洪武年间迁;满园《满氏族谱》,明初迁;戚庄《戚氏族谱》,元初迁;西马场《马氏族谱》洪武二年迁。大坞镇吴楼《吴氏族谱》,洪武年间迁;战河《战氏族谱》,洪武元年迁。西岗镇东庄《王氏家谱》,清康熙年间迁;杜庄《杜氏族谱》,正统五年迁;两河岔《满氏祖墓表》,永乐年间迁;费庄《费氏家谱》,洪武年间迁;卓楼《卓氏墓表》,洪武年间迁。枣庄城区记载洪洞迁民的族谱统计:

关于姓氏的研究报告

关于姓氏的研究报告 研究报告的计划: 一?问题的提出 我们班同姓的同学不少.他们常开玩笑说:"我们五百年前是一家!" 有一次,我翻阅《百家姓》发现许多有关姓氏的故事.于是,我们小组的成员开始了这次姓氏之旅? 二.调查方法 1.查阅《百家姓》等记载着古人姓氏的书籍,阅读有关报刊,上网查找浏览,了解本小组成员的姓氏来源和历史上的名人. 2.走访有关部门,了解本小组成员姓氏的人口和分布情况. 3.通过便捷的途径,搜集本小组成员姓氏的名人,了解名人的故事. 三.调查情况和资料整理 信息渠道 涉及的方面 具体内容 书籍报刊 黄姓的来源 公元前648年,楚成王责备黄国不向楚国进贡,黄国国君错误地分析形势,既不理会楚国的责问,又不进行任何防备,结果于当年夏天被楚国灭掉.亡国后的黄国子孙,以国名为姓氏,就是黄氏.

关于黄姓的历史和现状的研究报告 书籍报刊教科书 历史上的黄姓名人 黄歇黄霸黄盖黄巢黄庭坚黄道婆黄宗羲黄遵宪宋代状元黄定 上网 黄姓人口数量 黄姓的人口约为2876万,为全国第八大姓,大约占全国人口的2.2% 爷爷的讲述 黄姓族谱 浙江杭州?武林黄氏宗谱:清光绪间礼耕堂钞本一册藏地:美国浙江余杭?黄氏宗谱四卷:清光绪二十七年(1901)木活字本藏地:浙江余杭县文化管理委员会 关于王姓的历史和现状的研究报告 信息渠道 涉及的方面 具体内容 书籍报刊 王姓的来源

周灵王太子姬晋,因直言进谏,使王上大怒,被废为庶民,迁居到琅琊(今山东省胶南一带),世代繁衍生息.因其本为王族,世人称其"王家", 就延用成姓. 书籍报刊教科书 历史上的王姓名人 王陵王昭君王政君王凤王莽王匡王霸王朗王祥王览王导王充王献 之王羲之 上网 王姓人口数量 根据公安部治安管理局对全国户籍人口的统计分析,王姓目前仍是我国的第一姓,有9288.1万人,占全国人口总数的7.25%?也就是说每13个人中就有一个人姓王,这相当于四川省的总人口,比德国的总人口还咼1000万人. 爷爷的讲述 王姓族谱 王姓家谱文献目录:《东沙王氏支谱?家规》《三槐堂王氏族谱》 《绮山东沙王氏支谱》 关于刘姓的历史和现状的研究报告 信息渠道 涉及的方面 具体内容

数据结构家谱管理系统

//////////////////////////////////////////////////////////// /////////////////// //题目:家谱资料管理 //要求:家谱用于记录某家族历代家族成员的情况与关系。现编制一个家谱资料管理软件, //实现对一个家族所有的资料进行收集整理。支持对家谱的增加,删除,更新,统计等。 //////////////////////////////////////////////////////////// /////////////////// #include #include #include int MATEFLAG=0; typedef struct TreeNode

int Num; //记录这个人拥有几个儿女 char Name[20]; //记录这个人的姓名 char Kind; //标示节点的种类有女G男B struct TreeNode * NextNode[20]; //记录这个人的儿女struct TreeNode * Parent; //记录这个节点的父节点 }TreeNode; void CreatTree(TreeNode *Tree); void OutPutAll(TreeNode *Tree); TreeNode * SearchTree(TreeNode *Tree,char name[],int length); void MainMenue(TreeNode *Tree); void SubMenue1(TreeNode * Tree); void SubMenue2(TreeNode *Tree); void Change(TreeNode * Tree); void AddNew(TreeNode * Tree);

数据结构家谱课程设计报告

家谱管理系统 姓名:田鑫磊 学号:1514020421 (1)功能部分: 本程序共实现了6个功能分别为: 1.读出家谱并显示 2.确定指定成员在家族中的辈份 3.输出指定辈的所有成员 4.在家谱中添加新成员,并追加到文件中 5.输出指定家庭的所有成员 6. 退出本系统 (2)各功能的算法思想: 1.读出家谱并显示 存储结构用栈,按照先显示双亲,然后显示其所有孩子的顺序显示所有的家庭成员。 2.确定指定成员在家族中的辈份 用求成员所在的二叉树中的层数(按层遍历二叉树)来确定,这里采用的是递归算法3.输出指定辈的所有成员 此处定义了一个新的结构体类型(增加存储节点所在的层数),定义如下: struct { BTNode *q; int loc; //存结点所在的层数 }qu[10]; 并用一个队列来比较显示同辈分的所有成员。 4.在家谱中添加新成员,并追加到文件中 首先,输入一个新成员的名字; 然后,输入其双亲; 之后,再添加到整个存储二叉链表中。 然后,再将新的存储结构写回到文件中。 二叉链表的结点类型为:typedef struct node { ElemType data[10]; //存放成员的名字 struct node *child; //其孩子指针 struct node *brother; //其兄弟指针 }BTNode; 5.输出指定家庭的所有成员 首先,设一个栈,并设一个标记位,先置1; 然后,找到输入的要待显示的成员,将标记位置0; 再次,显示其孩子和兄弟,依次下去直到显示完其所有的亲戚。 6.退出本系统 通过一个输入字符q来控制,每完成一个功能,系统提示是否要继续操作:

(完整word版)家谱管理系统

洛 阳 理 工 学 院 课 程 设 计 报 告 课程名称 ___________________________________ 设计题目 ___________________________________ 专 业 ___________________________________ 班 级 ___________________________________ 学 号 ___________________________________ 姓 名 ___________________________________ 完成日期 ___________________________________ 数据结构课程设计 家谱管理系统 计算机科学与技术 B150405 B15080822 宋士龙 2016年12月30日

课程设计任务书 设计题目:家谱管理系统 设计内容与要求: 【问题描述】:实现具有下列功能的家谱管理系统 1). 输入文件以存放最初家谱中各成员的信息,成员的信息中均应包含以下内容:姓名、出生日期、婚否、地址、健在否、死亡日期(若其已死亡),也可附加其它信息、但不是必需的。 2). 实现数据的存盘和读盘。 3). 显示家谱。 4). 按照出生日期查询成员名单。 5). 按照姓名查询,输出成员信息(包括其本人、父亲、孩子的信息)。 6). 修改某成员信息。 【基本要求】: 界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。 存储结构:学生自己根据系统功能要求自己设计,但是要求相关数据要存储在数据文件中。 测试数据:要求使用1、全部合法数据;2、局部非法数据。进行程序测试,以保证程序的稳定。 测试数据及测试结果请在上交的资料中写明。 指导教师:_______________ 年月日 课程设计评语 成绩: 指导教师:_______________ 年月日

家谱管理系统(含源代码)

家谱管理系统——C语言(数据结构) 目的和要求:树形结构是一种非常重要的非线性结构,它用于描述数据元素之间的层次关系,人类家谱是树形结构的典型体现,通过此项训练让学生掌握树形结构的知识;使学生重点掌握树与二叉树的转换,二叉树的存储和遍历,和二叉树相关的一些运算;要求完成家谱信息的录入和保存,任意成员的查找及某一成员祖先、子孙、兄弟、堂兄弟的查找。 排答疑和辅导。 完整代码: #include #include #include int MATEFLAG=0; //是否入赘或嫁入这家的,1表示为是,0表示否 typedef struct TreeNode//树节点定义 { int Num; //保存此人儿女个数 char Name[20]; //保存此人姓名 char Kind; //保存此人性别,男M,女F struct TreeNode * NextNode[20]; //保存此人的儿女,NextNode[0]里存放配偶的地址struct TreeNode * Parent; //保存此节点的父节点 }TreeNode; void CreatTree(TreeNode *Tree);//创建树 void OutPutAll(TreeNode *Tree);//输出树 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;//产生根节点 Tree=(TreeNode *)malloc(sizeof(TreeNode)); Tree->Parent =NULL; strcpy(Tree->Name,"0"); MainMenu(Tree);//显示主菜单 } //添加新的成员 void AddNew(TreeNode * Tree) { SubMenue2(Tree);//添加新成员界面 } //显示添加家庭信息的界面

家谱管理系统设计报告样本

目录 第一章绪论............................................................... 错误!未定义书签。第二章需求分析........................................................... 错误!未定义书签。 2.1题目...................................................................... 错误!未定义书签。 2.2设计任务.............................................................. 错误!未定义书签。 2.3数据测试.............................................................. 错误!未定义书签。第三章概要设计....................................................... 错误!未定义书签。 3.1 设计思想 ........................................................ 错误!未定义书签。 3.2 实现方法 ........................................................ 错误!未定义书签。第四章详细设计....................................................... 错误!未定义书签。 4.1功能构想.............................................................. 错误!未定义书签。 4.2界面设计.............................................................. 错误!未定义书签。 4.3增加成员.............................................................. 错误!未定义书签。 4.3.1 添加子女 .................................................... 错误!未定义书签。 4.3.2 添加配偶 .................................................... 错误!未定义书签。 4.4修改成员.............................................................. 错误!未定义书签。 4.4.1修改个人信息............................................. 错误!未定义书签。 4.4.2修改父母信息............................................. 错误!未定义书签。 4.4.3修改兄弟姐妹的信息................................. 错误!未定义书签。 4.4.4修改子女的信息......................................... 错误!未定义书签。第五章调试分析....................................................... 错误!未定义书签。

数据结构家谱管理系统报告书

数据结构大作业说明文档 一、题目的选择 这次数据结构的大作业,我的选题是家谱管理系统的设计与实现。由于平时疏于编程——针对我得个人实际——我把主要的目标定位在完成家谱管理系统得基本要求。(基本要求大纲中有,就不浪费版面了) 二、设计的思路 接到这个题目,我的总体设计思路是先为程序搭建好一个结构框架,再跟据时间的宽裕程度和其它的要求逐步增强程序的性能。 关于IO的设计: 考虑到题目要求家谱信息以树形的形式一次读入内存,而个人的各种资料现在虽然条目不多,但随着程序的升级,以后可能变得越来越大。我把树形结构和个人信息记录的文档分为两个文件保存在外存中,一个文件串行化地记录家谱树的结构信息,保存少量个人信息作为识别标志;另一个文件保存完整的个人信息,所有的个人信息以线性记录的方式记录在其中。当程序运行要读入家谱结构时,只读入保存少量记录的文件并建立起树形结构。索引时,以树形中的少量信息为依据在另一个文件中找到全部的各人信息资料。 这样的好处主要有两点: 1. 由于树形结构是串行化记录于外存,一个节点记录多次,信息大量冗余,如果树形节点中保留全部信息,必将造成大量的空间浪费;只保存作为索引的少量信息在树形结构中,节约了空间。 2. 由于结构的精简,在家谱初始化时读入内存需要的时间相应减少,节约了装载时间。 这样做存在的问题: 每次执行修改,添加,删除,查询时都要直接访问外存来取得或写入数据。内外存访问上的巨大时间差的存在,使得进行这些操作相对来说并不显得很高效。 关于树形的结构: 在树形结构的选择上,根据实际中多子女的现象选择一般树,考虑到家谱中成员可能存在的不定成员数问题,抛弃了以数组为基础的一般树方案,决定用链表来实现。 树形结构的外存保存。为了提高效率,树形结构在程序初始化时由外存文件一次读入内存,此后不管插入还是修改,删除都不再对外存的树结构保存文件进行操作,只在内存中处理,程序退出时对外存树结构文件进行一次更新。也就是说,不管在程序运行中中对家谱结构进行多少种,多少次的操作,外存的树结构文件始终只会被程序访问两次。

相关文档