版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 JINGCHU UNIVERSITY OF TECHNOLOGY 課程設(shè)計報告 課程名稱:通訊錄管理系統(tǒng) 專 業(yè) : 計算機(jī)科學(xué)與技術(shù) 班 級 : 11級計算機(jī)科學(xué)與技術(shù)班 學(xué)生姓名 : 李 孝 東 學(xué) 號 : 37 指導(dǎo)教師 : 任 正 云 提交日期 : 2012.06.15 摘要:紙質(zhì)的通訊錄已經(jīng)不能滿足我們的要求,更新麻煩,查詢困難等缺點是紙質(zhì)通訊錄所不能克服的。在此情況下,迫切需要一個電子版的通訊錄來滿足我們的需求。這次課程設(shè)計的通訊錄采用了二叉搜索樹這一數(shù)據(jù)結(jié)構(gòu),并完成了添加、查找、刪除、保存等功能。在TC2.0平臺下實現(xiàn)了人機(jī)交互界面上的圖形化設(shè)計,其中菜單的顯示為逐楨動畫,在等
2、待用戶按鍵輸入時設(shè)計了友好的系統(tǒng)。關(guān)鍵字:數(shù)組,結(jié)構(gòu)體,指針,函數(shù),文件 summary:papers address book cant meet our requirements, update the trouble, inquires the difficulty is the disadvantages such as paper address book cant overcome. In this case, the urgent need to a version of the address book to meet our needs. The course design
3、of the address book adopted binary search trees the data structure, and completed add, delete, save search, etc. Function. In TC2.0 the workbench realized on the man-machine interface graphical design, including the menu that by standard for animation, waiting for the user input buttons when the fri
4、endly system design.Key words:arrays, structures, pointer, function, file 目錄一、設(shè)計題目及要求1二、概要設(shè)計2三、詳細(xì)設(shè)計23.1 通訊錄:23.2 工作流程圖:4四、源程序代碼8五、用戶手冊16六、課程設(shè)計總結(jié)和心得體會16七、參考文獻(xiàn)16一、設(shè)計題目及要求:建立通訊錄信息,信息至少包含編號、姓名、年齡、電話、通訊地址、電子郵箱等;能夠提供添加、刪除和修改通訊錄信息的功能;能夠提供安不同方式查詢的功能;如按姓名或年齡、電話等查詢;將通訊錄保存在文件中;能夠按表格方式輸出通訊錄信息。系統(tǒng)功能需求分析:主要包含一下多種功
5、能:添加:添加通訊錄記錄顯示:顯示通訊錄記錄刪除:刪除通訊錄記錄查詢:查詢通訊錄記錄修改:修改通訊錄記錄保存:將信息保存到文件本文檔,極大的方便了用戶的使用。 二、概要設(shè)計系統(tǒng)功能模塊圖:添加:可以添加通訊錄記錄,依次輸入編號、姓名、年齡、電話號碼、通訊地址、電子郵箱后,會提示是否繼續(xù)添加。顯示:可以以表格形式輸出所有通訊錄里的記錄。刪除:輸入欲刪除的那個人的名字后,會自動刪除他(她)的記錄內(nèi)容。查詢:可以選擇用姓名、電話、地址三種方式查詢。修改:輸入欲修改的那個人的名字后,再依次輸入編號、姓名、年齡、電話號碼、通訊地址、電子郵箱即可完成修改。保存:輸入文件名(帶后綴名)后,即可將通訊錄信息保
6、存到文件。運行所需環(huán)境:win7及以下各版本windows,visual C+6.0。三、詳細(xì)設(shè)計3.1 通訊錄:typedef struct char score; /*編號*/char name10; /*姓名*/ char num15; /*號碼*/ char email20;/*郵箱*/char age8;/*年齡*/char adds20;/*住址*/Person;void main() /*主函數(shù)*/ int n=0; for(;) switch(menu_select() case 1: printf(nt添加記錄到通訊錄n); /*添加記錄*/ n=Input(pe,n); b
7、reak; case 2: printf(nttt 通訊錄記錄表n); /*顯示記錄*/ Display(pe,n); break;case 3: printf(nt從通訊錄中刪除記錄n); n=Delete_a_record(pe,n); /*刪除記錄*/ printf(t); system(pause); break; case 4: printf(nt在通訊錄中查找記錄n); Query_a_record(pe,n); /*查找記錄*/ printf(t); system(pause); break;case 5: printf(nt修改通訊錄中的記錄n); Change(pe,n);
8、/*修改數(shù)據(jù)*/ printf(t); system(pause); break; case 6: printf(nt保存功能n); WritetoText(pe,n); /*保存數(shù)據(jù)*/ printf(t); system(pause); break; case 0: printf(ntt謝謝使用,再見!n); /*結(jié)束程序*/ printf(ntt); system(pause); exit(0); 3.2 工作流程圖:添加:添加通訊錄記錄顯示:顯示通訊錄記錄刪除:刪除通訊錄記錄查詢:查詢通訊錄記錄先選擇查詢方式,以姓名查詢方式為例 修改:修改通訊錄記錄四、源程序代碼#include #i
9、nclude#include typedef struct char score; /*編號*/char name10; /*姓名*/ char num15; /*號碼*/ char email20;/*郵箱*/char age8;/*年齡*/char adds20;/*住址*/Person; Person pe80; int menu_select() char c; do system(cls); printf(tt *通訊錄* n); printf(ttn); printf(tt 1. 添加記錄 n); printf(tt 2. 顯示記錄 n); printf(tt 3. 刪除記錄 n)
10、; printf(tt 4. 查詢記錄 n); printf(tt 5. 修改記錄 n); printf(tt 6. 保存記錄 n);printf(tt 0. 退出程序 n); printf(ttn); printf(tt請您選擇(0-6):); c=getchar(); while(c6); return(c-0); int Input(Person per,int n) int i=0; char sign,x10; while(sign!=n&sign!=N) printf(t編號:); scanf(t%d,&pern+i.score); printf(t姓名:); scanf(t%s,
11、pern+); printf(t年齡:); scanf(t%s,pern+i.age);printf(t電話號碼:); scanf(t%s,pern+i.num); printf(t通訊住址:); scanf(t%s,pern+i.adds);printf(t電子郵箱:);scanf(t%s,pern+i.email);gets(x); printf(nt是否繼續(xù)添加?(Y/N); scanf(t%c,&sign); i+; return(n+i); void Display(Person per,int n) int i; printf(-n); /*格式*/ printf(編號
12、 姓名 年齡 電話號碼 通訊地址 電子郵箱n); printf(-n); for(i=1;i1&i%10=0) printf(t-n); printf(t); system(pause); printf(t-n); printf(-n);system(pause); int Delete_a_record(Person per,int n) char s20; int i=0,j; printf(t請輸入想刪除記錄中的名字:); scanf(%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通訊錄中沒有此人!n); retu
13、rn(n); for(j=i;jn-1;j+) strcpy(perj.num,perj+1.num); strcpy(,perj+1.name); strcpy(perj.age,perj+1.age);strcpy(perj.adds,perj+1.adds);strcpy(perj.email,perj+1.email);perj.score=perj+1.score; printf(ttt已經(jīng)成功刪除!n); return(n-1); void Query_a_record(Person per,int n) int m;printf(tn請選擇查詢方式:n); pr
14、intf(tn); printf(t1-姓名 n); printf(t2-電話 n); printf(t3-地址 n); printf(t4-返回 n); printf(tn); printf(請選擇:); scanf(%d,&m); while(m!=1&m!=2&m!=3&m!=4) printf(輸入錯誤,請重新選擇:);scanf(%d,&m);if(m=1)char s20; int i=0; printf(t請輸入想查詢的姓名:); scanf(t%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通訊錄中沒有此人
15、!n); return; printf(t此人編號: %dn,peri.score);printf(t此人年齡: %sn,peri.age); printf(t電話號碼: %sn,peri.num); printf(t通訊地址: %sn,peri.adds);printf(t電子郵箱: %sn,peri.email); ;if(m=2)char s20; int i=0; printf(t請輸入想查詢的電話:); scanf(t%s,s); while(strcmp(peri.num,s)!=0&in) i+; if(i=n) printf(t通訊錄中沒有此人!n); return; prin
16、tf(t此人編號: %dn,peri.score);printf(t此人姓名: %sn,);printf(t此人年齡: %sn,peri.age); printf(t通訊地址: %sn,peri.adds);printf(t電子郵箱: %sn,peri.email); ;if(m=3)char s20; int i=0; printf(t請輸入想查詢的地址:); scanf(t%s,s); while(strcmp(peri.adds,s)!=0&in) i+; if(i=n) printf(t通訊錄中沒有此人!n); return; printf(t此人編號: %dn,pe
17、ri.score);printf(t此人姓名: %sn,);printf(t此人年齡: %sn,peri.age); printf(t電話號碼: %sn,peri.num); printf(t電子郵箱: %sn,peri.email); ;void Change(Person per,int n) char s20; int i=0; printf(t請輸入想修改的記錄中的名字:); scanf(%s,s); while(strcmp(,s)!=0&in) i+; if(i=n) printf(t通訊錄中沒有此人!n); return; printf(t編號
18、:); scanf(t%d,&peri.score); printf(t姓名:); scanf(t%s,); printf(t年齡:); scanf(t%s,peri.age);printf(t電話號碼:); scanf(t%s,peri.num); printf(t通訊住址:); scanf(t%s,peri.adds);printf(t電子郵箱:);scanf(t%s,peri.email);printf(t修改成功!);void WritetoText(Person per,int n) int i=0; FILE *fp; /*定義文件指針*/ char filena
19、me20; /*定義文件名*/ printf(t保存到文件n); /*輸入文件名*/ printf(t請輸入所保存的文件名:); scanf(t%s,filename); if(fp=fopen(filename,w)=NULL) printf(t無法打開文件n); system(pause); return; fprintf(fp,*通訊錄*n);fprintf(fp,編號 姓名 年齡 電話號碼 通訊地址 電子郵箱n);fprintf(fp,-n);while(in) fprintf(fp,%-3dt%-6st%-3st%-13st%-20st%-20sn,peri.score,peri.n
20、ame,peri.age,peri.num,peri.adds,peri.email); i+; fprintf(fp,-n);fprintf(fp,*共有%d條記錄*n,n); fclose(fp); /*關(guān)閉文件*/ printf(保存成功!n); void main() /*主函數(shù)*/ int n=0; for(;) switch(menu_select() case 1: printf(nt添加記錄到通訊錄n); /*添加記錄*/ n=Input(pe,n); break; case 2: printf(nttt 通訊錄記錄表n); /*顯示記錄*/ Display(pe,n); br
21、eak;case 3: printf(nt從通訊錄中刪除記錄n); n=Delete_a_record(pe,n); /*刪除記錄*/ printf(t); system(pause); break; case 4: printf(nt在通訊錄中查找記錄n); Query_a_record(pe,n); /*查找記錄*/ printf(t); system(pause); break;case 5: printf(nt修改通訊錄中的記錄n); Change(pe,n); /*修改數(shù)據(jù)*/ printf(t); system(pause); break; case 6: printf(nt保存功能n); WritetoText(pe,n); /*保存數(shù)據(jù)*/ printf(t); system(pause); break; case 0: printf(ntt
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年高職會計(財務(wù)會計實務(wù))試題及答案
- 2025年大學(xué)醫(yī)學(xué)檢驗技術(shù)(微生物檢驗技術(shù))試題及答案
- 高職第二學(xué)年(旅游政策與法規(guī)實訓(xùn))法規(guī)應(yīng)用實操2026年階段測試題及答案
- 2025年大學(xué)大四(農(nóng)業(yè)資源與環(huán)境)農(nóng)業(yè)環(huán)境保護(hù)綜合試題及答案
- 2025年大學(xué)三年級(動物醫(yī)學(xué))動物傳染病學(xué)試題及答案
- 2025年高職機(jī)械設(shè)計(設(shè)計實操)試題及答案
- 2025年中職工程監(jiān)理(工程監(jiān)理實務(wù))試題及答案
- 2025年高職酒店管理(酒店專題)試題及答案
- 2025年大學(xué)食品衛(wèi)生與營養(yǎng)學(xué)(營養(yǎng)配餐設(shè)計)試題及答案
- 2026年中職第一學(xué)年(學(xué)前教育)幼兒衛(wèi)生保健測試題
- 2025年大學(xué)第一學(xué)年(食品營養(yǎng)與健康)營養(yǎng)學(xué)基礎(chǔ)測試題及答案
- 2025-2030烏干達(dá)基于咖啡的種植行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2026年共青團(tuán)中央所屬單位招聘66人備考題庫及答案詳解一套
- 人民警察法培訓(xùn)課件
- 小糖人課件:糖尿病患者兒童糖尿病的護(hù)理
- 2026年哈爾濱職業(yè)技術(shù)學(xué)院單招職業(yè)適應(yīng)性考試題庫參考答案詳解
- 2025云南昆明巫家壩建設(shè)發(fā)展有限責(zé)任公司及下屬公司第四季度社會招聘31人歷年真題匯編帶答案解析
- 輸尿管切開取石課件
- 66kV及以下架空電力線路設(shè)計標(biāo)準(zhǔn)
- 2025年浙江乍浦經(jīng)濟(jì)開發(fā)區(qū)(嘉興港區(qū))區(qū)屬國有公司公開招聘28人筆試考試備考試題及答案解析
- 胃腸外科危重患者監(jiān)護(hù)與護(hù)理
評論
0/150
提交評論