status wrong() { char a;
scanf(\
printf(\无此选项,请重新选择!(按任一键继续!)\ getch(); return 1; }
//家谱的存储
statusSav(BiPTree T){ FILE *fp; char filename[40]; system(\
printf(\请输入新的文件名:\ getchar(); gets(filename);
while(filename[0]==NULL) {
printf(\家谱名不能为空,请重新输入:\ gets(filename);
}
prewrite(T,write,filename);
printf(\家谱保存成功,按任一键继续!\ getch(); return 1; }
//修改家谱 statusUpd(){ system(\ intxz; while(1) { system(\ printf(\
printf(\◎^*)家族成员的添加与删除操作(*^◎^*) \\n\printf(\◎^*)请选择 (*^◎^*)\\n\printf(\◎^*) 1.添加成员. (*^◎^*)\\n\ printf(\◎^*) 2.删除成员. (*^◎^*)\\n\
printf(\◎^*) 3.返回上一级. (*^◎^*)\\n\ printf(\ 请选择:\ scanf(\
switch(xz) {
case 1 : in(T);break; case 2 : de(T);break; case 3 : return 0; default : wrong();
break;
} } } main() {
P=(BiTPNode *)malloc(sizeof(BiTPNode)); intxz; while(1) { system(\ printf(\
printf(\◎^*) 家族关系查询系统 (*^◎^*) \\n\
printf(\◎^*) 具体操作如下 (*^◎^*) \\n\ printf(\◎^*) 1.创建家谱. (*^◎^*) \\n\ printf(\◎^*) 2.载入家谱. (*^◎^*) \\n\ printf(\◎^*) 3.修改家谱. (*^◎^*) \\n\ printf(\◎^*) 4.查寻成员. (*^◎^*) \\n\ printf(\◎^*) 5.保存家谱. printf(\◎^*) 6.退出程序. printf(\ 请选择操作:\
scanf(\ switch(xz) { case 1 : Cre();
break;
case 2 : Crt(T);
break;
case 3 : Upd();
break;
case 4 :
Sea(T);
(*^◎^*) (*^◎^*) \\n\ \\n\ break;
case 5 :
Sav(T); break;
case 6 :
return 0;
default :
wrong(); break;
} } }
六、 运行结果分析 主界面及其操作选项:
输入家谱名称及家谱内容: