一部完整的家谱基本哪些常见内容?

栏目:资讯发布:2023-09-28浏览:3收藏

一部完整的家谱基本哪些常见内容?,第1张

一、谱名

谱名中最重要的是谱籍和姓氏,即是什么地方、什么家族的家谱,为什么这样要这样写?更准确的反映家谱作为“史书”来反映信息,不然,编修的人当时明白,经年累月之后,转之何人何地?便无从查考,给后人寻根带来巨大困难。

二、像赞

人物像赞有各种表达,或始祖,如三皇五帝,也可以是近祖,或者迁祖,还可以是自古到今的家族内非凡的人物,特别杰出的人才。以昭示后人发奋图强。

三、谱序

稍具规模的家谱,卷首一定会有一篇至几十篇不等的序文,它是每部家谱不可缺少的内容之一。谱序包括新序、旧序、族外人的客序、跋语、目录和刻印人名以及其它关于本族的记述。

四、目录

全部家谱内容提要,以便检索。

五、谱论

谱论,即谱学理论,从司马迁开始历代都有名家,如欧阳修,苏轼,王安石,朱熹,王阳明,比如章学诚的《文史通义》曰:“有谱、州有志、国有史,其义一也。”,“且有天下之史,有一国之史有一家之史,有一人之史。传状志述,一人之史也;家乘谱牒,一家之史也;郡府县志,一国之史;综纪一朝,天下之史也。

六、凡例

凡例,即修谱的原则,规定,比如哪些人可以入谱,哪些人不能入谱,对人的次序的排定,哪些内容怎么去写等等,就是规定家谱里面都有什么,这个显示出编修之人的主观态度,如明朝家谱对女性入家谱,就很明确的规定:丈夫之后跟原配,接着依次是:继配,侧室,妾,纳,除原配外,这些二三四五老婆不可以有名字,原籍,生卒,等,这个男尊女卑的“名分”观念,尤 是对女性的一种变态的歧视。

七、家训

不要误解,《家训》不是家谱内容,这里为了突出家训的内容做个配图,中国是家天下的社会结构,名门望族是一大特色,家训家风起了很重要的教育作用。

八、世系

世系是家谱内容的核心部分,从家族第一世开始,记载其生卒,婚配,事略,墓葬,其人如何?一目了然。

九、传记

传记,不是每个人都有,是对家族内的杰出人物,立功立德之人的具体描写,反应出这些人物的杰出品质, 垂范后辈,是榜样力量。可分内传。外传,内传是五服之内,外传是五服之外,还有列传,分门别类,比如家佣,二三四老婆中的贞烈之妇,可做列传,这已经不适合今天。

十、谱跋

上图是梅曾亮的家谱跋语,他自夸了一下,“知岩”以乡兵保障宣州,然后对家族的分派流迁做了陈说,所以跋语就是做谱之后的感想,经验,过程等含有者的寄托之语。

十一、领谱字号

家族支派繁多广布,必须有字号,作为验证, 跟对号入座一样。家谱一般就包括上述内容,除此之外比较重要的包括,祠堂,敕封,艺文,契约等还有一些图表,制作时可根据原谱内容确定。没有原谱,就必须另起创谱,不使历史中断,再根据个人情况确定内容。

1、可以利用电脑中的Word文档完成家谱制作,首先打开word文档,点击工具栏中的“插入”选项并找到“smartart”图标。

2、然后在打开的“smartart”页面选择“组织结构图”,点击确定。

3、即可将标准的组织结构图插入页面中,点击文本处即可输入文字。

4、点击空白处或者原本的文本框,并选择添加项目的按钮,选择需要添加的项目的位置。

5、根据需要进行添加后即可生成一个家谱世系图的样式,在其中输入对应的姓名及内容即可。

家谱可不是随便编的。编家谱实际应是续家谱。一般的家谱都是有章法的,依着字号顺序排列。当字号用完或即将用完时,应有几位本家性氏的年长老者,举行续家谱仪式,共同商定往下排续的字号,而选续的字号决不允许与先辈的字号重复。

例如:常永志--“常”是姓氏,永志是名字,“永”就是永字辈的家谱字号。而字号用在名字的第一位或第二位均可。

如果老师让你们编家谱的话,那么你们的老师是个白痴。

#include<stdioh>

#include<stringh>

#include<stdlibh>

#define MaxWidth 40

#define Maxsize 30

#define NAMEWIDTH 10

typedef struct fnode

{

char father[NAMEWIDTH];

char wife[NAMEWIDTH];

char son[NAMEWIDTH];

}FamType;

typedef struct tnode

{

char name[NAMEWIDTH];

struct tnode lchild;

struct tnode rchild;

}BTree;

BTree CreatBTree(char root,FamType fam[],int n)

{

int i=0,j;

BTree bt,p;

bt=(BTree )malloc(sizeof(BTree));

strcpy(bt->name,root);

bt->lchild=bt->rchild=NULL;

while(i<n&&strcmp(fam[i]father,root)!=0)

i++;

if(i<n)

{

p=(BTree )malloc(sizeof(BTree));

p->lchild=p->rchild=NULL;

strcpy(p->name,fam[i]wife);

bt->lchild=p;

for(j=0;j<n;j++)

{

if(strcmp(fam[j]father,root)==0)

{

p->rchild=CreatBTree(fam[j]son,fam,n);

p=p->rchild;

}

}

return(bt);

}

}

void DispTree1(BTree b)

{

if(b!=NULL)

{

printf("%s",b->name);

if(b->lchild!=NULL||b->rchild!=NULL)

{

printf("(");

DispTree1(b->lchild);

if(b->rchild!=NULL)

printf(",");

DispTree1(b->rchild);

printf(")");

}

}

}

void DispTree2(BTree bt)

{

BTree St[Maxsize],p;

int Level[Maxsize][2],top,n,i,width=4;

if(bt!=NULL)

{

printf(" >>家谱凹入表示法:\n");

top=1;

St[top]=bt;

Level[top][0]=width;

while(top>0)

{

p=St[top];

n=Level[top][0];

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

printf(" ");

printf("%6s",p->name);

for(i=n+1;i<MaxWidth-6;i+=2)

printf("--");

printf("\n");

top--;

if(p->rchild!=NULL)

{

top++;

St[top]=p->lchild;

Level[top][0]=n+width;

Level[top][1]=1;

}

}

}

}

BTree FindNode(BTree bt,char xm[])

{

BTree p=bt;

if(p==NULL)

return(NULL);

else

{

if(strcmp(p->name,xm)==0)

return p;

else

{

bt=FindNode(p->lchild,xm);

if(bt!=NULL)

return bt;

else

return(FindNode(p->rchild,xm));

}

}

}

void FindSon(BTree bt)

{

char xm[NAMEWIDTH];

BTree p;

printf(" >>父亲姓名:");

scanf("%s",xm);

p=FindNode(bt,xm);

if(p==NULL)

printf(" >>不存在%s的父亲!\n",xm);

else

{

p=p->lchild;

if(p==NULL)

printf(" >>%s没有妻子!\n",xm);

else

{

p=p->rchild;

if(p==NULL)

printf(" >>%s没有儿子!\n",xm);

else

{

printf(" >>%s的儿子:\n",xm);

while(p!=NULL)

{

printf("%10s",p->name);

p=p->rchild;

}

printf("\n");

}

}

}

}

int Path(BTree bt,BTree s)

{

BTree St[Maxsize];

BTree p;

int i,flag,top=-1;

do

{

while(bt)

{

top++;

St[top]=bt;

bt=bt->lchild;

}

p=NULL;

flag=1;

while(top!=-1&&flag)

{

bt=St[top];

if(bt->rchild==p)

{

if(bt==s)

{

printf(" >>所有祖先:");

for(i=0;i<top;i++)

printf("%s",St[i]->name);

printf("\n");

return 1;

}

else

{

top--;

p=bt;

}

}

else

{

bt=bt->rchild;

flag=0;

}

}

}while(top!=-1);

return 0;

}

void Ancestor(BTree bt)

{

BTree p;

char xm[NAMEWIDTH];

printf(" >>输入姓名:");

scanf("%s",xm);

p=FindNode(bt,xm);

if(p!=NULL)

Path(bt,p);

else

printf(" >>不存在%s\n",xm);

}

void DelAll(FamType fam[],int n)

{

FILE fp;

if((fp=fopen("famdat","wb"))==NULL)

{

printf(" >>不能打开家谱文件\n");

return;

}

n=0;

fclose(fp);

}

void ReadFile(FamType fam[],int n)

{

FILE fp;

long length;

int i;

if((fp=fopen("famdat","rb"))==NULL)

{

n=0;

return;

}

fseek(fp,0,2);

length=ftell(fp);

rewind(fp);

n=length/sizeof(FamType);

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

fread(&fam[i],sizeof(FamType),1,fp);

fclose(fp);

}

void SaveFile(FamType fam[],int n)

{

int i;

FILE fp;

if((fp=fopen("famdat","wb"))==NULL)

{

printf(" >>数据家谱文件不能打开\n");

return;

}

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

fwrite(&fam[i],sizeof(FamType),1,fp);

fclose(fp);

}

void InputFam(FamType fam[],int n)

{

printf(" >>输入父亲、母亲、和儿子姓名:");

scanf("%c%s%c%s%c%s",fam[n]father,fam[n]wife,fam[n]son);

n++;

}

void OutputFile(FamType fam[],int n)

{

int i;

if(n<0)

{

printf(" >>没有任何记录\n");

return;

}

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

printf(" %10s%10s%10s\n",fam[i]father,fam[i]wife,fam[i]son);

}

void main()

{

BTree bt;

FamType fam[Maxsize];

int n=0,sel,sel1;

ReadFile(fam,n);

do

{

printf("1文件操作 2家谱操作 0退出 请选择:");

scanf("%d",&sel);

switch(sel)

{

case 1:

do

{

printf("1:输入 2:输出 9:全清 0:存盘返回 请选择:");

scanf("%d",&sel1);

switch(sel1)

{

case 9:

DelAll(fam,n);

break;

case 1:

InputFam(fam,n);

break;

case 2:

OutputFile(fam,n);

break;

}

}while(sel1!=0);

break;

case 2:

bt=CreatBTree("f1",fam,n);

do

{

printf("1:括号表示法2凹入表示法3找某人所有儿子4找某人所有祖先0:返回 请选择:");

scanf("%d",&sel1);

switch(sel1)

{

case 1:

printf(" >>");

DispTree1(bt);printf("\n");

break;

case 2:

DispTree2(bt);

break;

case 3:

FindSon(bt);

break;

case 4:

printf(" >>");Ancestor(bt);

break;

}

}while(sel1!=0);

break;

}

}while(sel!=0);

}

是这个程序 不好意思啦

一部完整的家谱基本哪些常见内容?

一、谱名谱名中最重要的是谱籍和姓氏,即是什么地方、什么家族的家谱,为什么这样要这样写?更准确的反映家谱作为“史书”来反映信息,不然...
点击下载
上一篇:陈的名字下一篇:家谱是什么
热门文章
    确认删除?
    回到顶部