voidMenu(){printf("\n\t\t------------------家谱管理系统-----------------\n\n");//说明该代码的实现功能 printf("\t\t***********************\n"); printf("\t\t**\n"); printf("\t\t*家谱信息管理菜单*\n"); printf("\t\t**\n"); printf("\t\t*1:创建家谱(祖先)*\n"); printf("\t\t*2:添加新的家庭成员*\n"); printf("\t\t*3:修改某个人的信息*\n"); printf("\t\t*4:删除名为name的成员*\n"); printf("\t\t*5:输出整个家谱信息*\n"); printf("\t\t*6:查找某个人的信息*\n"); printf("\t\t*7:从文件中导入*\n"); printf("\t\t*8:保存进文件*\n"); printf("\t\t*9:统计家谱信息*\n"); printf("\t\t*0:退出整个程序*\n"); printf("\t\t**\n"); printf("\t\t***********************\n");}这是该系统的界面:
voidinput_file(PedTreeTree){//导入文件 FILE*fp; inti=0; fp=fopen("C:/Users/jkl13/Desktop/家谱1.txt","r"); if(fp==NULL) {printf("cannotopenfile\n"); exit(0); } while(i这是他的读取和显示,这里是通过孩子数量(第一个)和排列顺序读取的,后面的代数没什么用,不过也不能去掉,可以自己照着改一下就行,建议改成以父母名字为寻找方向去读取,不过因为我比较忙,而且作业也过了,所以就没有继续优化了
voidoutput_file(PedTreeTree){//导入文件 FILE*fp; if((fp=fopen("C:/Users/jkl13/Desktop/家谱.txt","a"))==NULL){printf("cannotopenfile\n"); return; } _output_file(Tree,fp); printf("保存成功!\n"); fflush(stdin);//清除键盘缓冲区 printf("\n\t\t按任意键继续:"); getch(); fclose(fp); fp=NULL; free(fp);}这是删除和保存
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧