




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第1頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第1頁(yè)。-14-#include<stdio.h>#include<string.h>數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第6頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第6頁(yè)。#include<string.h>typedefstructpnode{charmale[10];charfemale[10];intn;structpnode*fchild,*brother;}pnode,*ptree;voidcreatfamily(ptree,FILE);voidpreorder(ptreep);voidshow(ptreep);intMenu(){ system("color1f"); system("modecon:cols=76lines=35"); inti; printf("******************歡迎使用愛新覺羅家族管理系統(tǒng)*****************\n\n"); printf("請(qǐng)選擇:\n"); printf("\n");數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第7頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第7頁(yè)。 printf("\n"); printf("2.顯示一個(gè)家庭關(guān)系\n"); printf("\n"); printf("3.查找成員\n"); printf("\n"); printf("4.添加新成員\n"); printf("\n"); printf("5.修改成員\n"); printf("\n"); printf("6.保存\n"); printf("\n"); printf("7.退出系統(tǒng)\n\n\n"); printf("\n");數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第8頁(yè)。 printf("********************數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第8頁(yè)。 printf("輸入1~6之間的數(shù)字選擇相應(yīng)功能:"); scanf("%d",&i); returni;}ptreecreatfamily(FILE*fp){if(!feof(fp)){ ptreep; p=(ptree)malloc(sizeof(pnode));charfname[10],mname[10]; inti; fscanf(fp,"%s%s%d\n",fname,mname,&i); if((strcmp(fname,"n")==0)&&(strcmp(mname,"n")==0)&&(i==0)){ p=NULL;returnp;}數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第9頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第9頁(yè)。 {strcpy(p->male,fname);strcpy(p->female,mname);p->n=i;printf("讀取成功\n");p->fchild=creatfamily(fp);p->brother=creatfamily(fp); returnp;}}}voidPreOrder(ptreep){if(p) {show(p); PreOrder(p->fchild); PreOrder(p->brother); } }voidshow(ptreep)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第10頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第10頁(yè)。printf("名字配偶第幾代\n"); printf("%2s%6s%d\n",p->male,p->female,p->n); }voidsearch(ptreep,charname[]){ if(p) {if(strcmp(p->male,name)==0){ show(p); getchar(); getchar();}search(p->fchild,name); search(p->brother,name);}}voidadd(ptreep,charname[]){數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第11頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第11頁(yè)。inti; if(p) {if(strcmp(p->male,name)==0){ printf("名字配偶第幾代\n"); scanf("%s%s%d",fname,mname,&i);p->fchild=(ptree)malloc(sizeof(pnode));strcpy(p->fchild->male,fname);strcpy(p->fchild->female,mname);p->fchild->n=i;p->fchild->fchild=NULL;p->fchild->brother=NULL;}add(p->fchild,name); add(p->brother,name);}}數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第12頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第12頁(yè)。{charfname[10],mname[10];inti; if(p) {if(strcmp(p->male,name)==0){ printf("名字配偶第幾代\n"); scanf("%s%s%d",fname,mname,&i);strcpy(p->male,fname);strcpy(p->female,mname);p->n=i;}gai(p->fchild,name); gai(p->brother,name);} }voidsave(ptreep,FILE*stream){數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第13頁(yè)。 數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第13頁(yè)。{ fprintf(stream,"%s%s%d",p->male,p->female,p->n);save(p->fchild,stream);save(p->brother,stream);}else{ charout[20]="nn0"; fprintf(stream,"%s\n",out);}}intmain(){intstatus;charname[10];ptreep;FILE*fp=fopen("lmx.txt","r+"); while(1){ status=Menu(); switch(status)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第14頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第14頁(yè)。case1:p=creatfamily(fp);getchar();getchar(); break; case2: PreOrder(p); getchar(); getchar(); break; case3: printf("請(qǐng)輸入搜索的名字\n"); scanf("%s",name); search(p,name); break; case4: printf("請(qǐng)輸入要孩子的人\n"); scanf("%s",name); add(p,name); break; case5:數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第15頁(yè)。數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第15頁(yè)。 scanf("%s",name); gai(p,name); break; case6: save(p,fp); getchar(); getchar(); break; case7: printf("\n感謝使用本系統(tǒng)\n"); fclose(fp); fclose(fp); exit(0);//如果選擇5,則退出循環(huán)終止程序 break; default: printf("\n您選擇有誤\n"); getchar(); }數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第16頁(yè)。 }數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第16頁(yè)。}四、調(diào)試與分析1、主菜單數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第17頁(yè)。家譜管理系統(tǒng)的主數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第17頁(yè)。2、顯示家譜信息讀取家譜信息3、顯示家譜中第n代人所有信息顯示家譜中第n代人所有信息4、按姓名查找某人并相應(yīng)輸出數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第18頁(yè)。查詢家譜成員信息的界面5、為家譜中成員添加孩子信息為家譜中成員添加孩子信息數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第19頁(yè)。6、修改家譜中成員信息修改家譜中成員信息五、設(shè)計(jì)總結(jié)1、完成情況數(shù)據(jù)結(jié)構(gòu)數(shù)據(jù)結(jié)構(gòu)-家譜管理系統(tǒng)全文共22頁(yè),當(dāng)前為第20頁(yè)。進(jìn)程第1次課第2次課第3次課第4次課負(fù)責(zé)人項(xiàng)目計(jì)劃全體成員總體方案全體成員編寫代碼徐程凱實(shí)驗(yàn)報(bào)告徐海域視頻制作白鈺琦整體完善全體成員答辯全體成員2、心得體會(huì)白鈺琦:從這個(gè)項(xiàng)目中,我懂得了代碼編寫能力的提高不是一天兩天的事,而是一個(gè)日積月累的過(guò)程。在不斷地編寫調(diào)試,是在提出問(wèn)題解決問(wèn)題的過(guò)程中慢慢提升起來(lái)的。所以,自己決定向編程高手看齊,多編程多提問(wèn)多思考。在今后的時(shí)間里更加努力地學(xué)習(xí)。徐程凱:在這個(gè)項(xiàng)目里我做了對(duì)家譜管理的系統(tǒng)分析。剛開始我們從網(wǎng)上下載好了我們需要的資料,通過(guò)取其精華去其糟粕,本來(lái)是想把系統(tǒng)整合的很完美,可是由于我c語(yǔ)言基礎(chǔ)不太扎實(shí),未能完成。也向同學(xué)請(qǐng)教,只能做到現(xiàn)在這個(gè)地步。通過(guò)這次課程設(shè)計(jì),我對(duì)這個(gè)樹的操作有了深刻的了解,對(duì)C語(yǔ)言也有了更深刻的了解。但我們需要更深刻地思考其實(shí)
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- UX 設(shè)計(jì)師崗位面試問(wèn)題及答案
- 2025屆河北省秦皇島市一中高二下化學(xué)期末教學(xué)質(zhì)量檢測(cè)試題含解析
- 2025屆天津市靜海區(qū)獨(dú)流中學(xué)化學(xué)高二下期末調(diào)研試題含解析
- 村鎮(zhèn)園林項(xiàng)目管理辦法
- 華為運(yùn)動(dòng)啟動(dòng)管理辦法
- 華潤(rùn)燃?xì)饪?jī)效管理辦法
- 農(nóng)村代理記賬管理辦法
- 公共綠化區(qū)域管理辦法
- 檢察檔案保密管理辦法
- 多功能復(fù)合創(chuàng)可貼-洞察及研究
- 2025年云南新華印刷五廠有限責(zé)任公司招聘筆試參考題庫(kù)含答案解析
- 2025年浙江金華市義烏市雙江湖開發(fā)集團(tuán)有限公司招聘筆試參考題庫(kù)附帶答案詳解
- 新課標(biāo)(水平三)體育與健康《籃球》大單元教學(xué)計(jì)劃及配套教案(18課時(shí))
- GB/T 44910-2024琥珀分級(jí)
- 臨時(shí)施工出入口交通疏導(dǎo)方案
- 醫(yī)療設(shè)備器材供貨安裝、調(diào)試及售后服務(wù)方案
- 大學(xué)生創(chuàng)新創(chuàng)業(yè)基礎(chǔ)(創(chuàng)新創(chuàng)業(yè)課程)完整全套教學(xué)課件
- 部編版語(yǔ)文三年級(jí)上冊(cè)第四單元教材解讀大單元集體備課
- 《論語(yǔ)十二章》挖空練習(xí)及答案
- 一對(duì)一幫扶協(xié)議書范本
- 2024年江蘇省無(wú)錫市中考英語(yǔ)試卷真題(含答案解析)
評(píng)論
0/150
提交評(píng)論