秋霞电影网午夜鲁丝片无码,真人h视频免费观看视频,囯产av无码片毛片一级,免费夜色私人影院在线观看,亚洲美女综合香蕉片,亚洲aⅴ天堂av在线电影猫咪,日韩三级片网址入口

C語言課程設計報告-c語言課程設計

上傳人:jun****875 文檔編號:23623234 上傳時間:2021-06-10 格式:DOC 頁數:10 大小:64.91KB
收藏 版權申訴 舉報 下載
C語言課程設計報告-c語言課程設計_第1頁
第1頁 / 共10頁
C語言課程設計報告-c語言課程設計_第2頁
第2頁 / 共10頁
C語言課程設計報告-c語言課程設計_第3頁
第3頁 / 共10頁

下載文檔到電腦,查找使用更方便

9.9 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《C語言課程設計報告-c語言課程設計》由會員分享,可在線閱讀,更多相關《C語言課程設計報告-c語言課程設計(10頁珍藏版)》請在裝配圖網上搜索。

1、 C語言課程設計論文 學生姓名: 陳丹 學生學號: 20091020101 所在班級: 信息與計算科學一班 任課教師: 馬老師 通訊錄管理系統(tǒng) 【設計目的】 設計“通訊錄管理系統(tǒng)”使其具有數據插入、修改、刪除、顯示和查詢等功能。 (1) 數據包括:人名、工作單位、電話號碼和E-mail地址。 (2) 可對記錄中的姓名和電話號碼進行修改。 (3) 可增加或刪除記錄。 (4) 可顯示所有保存的記錄。

2、 (5) 可按人名或電話號碼進行查詢。 【設計思路】 根據要求,電話簿數據以文本文件存放在文件中,故需要提供文件的輸入、輸出等操作;還需要保存記錄以進行修改,刪除,查找等操作;另外還應提供鍵盤式選擇菜單實現功能選擇。 【總體設計】 通訊錄管理系統(tǒng) 數據輸入 數據修改 刪除 數據添加 查找 瀏覽 圖1 系統(tǒng)功能模塊圖 【詳細設計】 1. 主函數 主函數設計要求簡潔,只提供部分提示語和函數的調用 【程序】 顯示一系列功能選項 輸入n,判斷n是否是1~7 ? 根據n的值調用各功能模塊函數 結束 開始 n

3、 圖2. 主函數流程圖 Void menu() /*主界面*/ { int n, w1; void enter(); void add(); void modify(); void browse(); void deleter(); void search(); do { puts("\t******************************菜單*****************************\t\n\n"); puts("\t\t\t\

4、t1.新建聯系人"); puts("\t\t\t\t2.添加聯系人"); puts("\t\t\t\t3.修改"); puts("\t\t\t\t4.刪除"); puts("\t\t\t\t5.瀏覽"); puts("\t\t\t\t6.查找"); puts("\t\t\t\t7.退出"); puts("\n\n\t***************************通訊錄******************************\t\n"); printf("請選擇服務種類(1-7) : [ ]\b\b"); scanf("%d",&

5、n); if(n<1||n>7) {w1=1;getchar();} else w1=0; }while(w1==1); switch(n) { case 1: enter(); break; /*輸入模塊*/ case 2: add(); break; /*添加模塊*/ 附錄:源代碼 #define N 50 #include #include struct people {char name[20]; char company[50]; c

6、har num[15]; char mail[20];}peop[N]; void printf_face() { printf("\n\t姓名\t單位\t電話號碼\t郵箱\n"); } void printf_one(int i) { printf("\t%s\t%s\t%s\t%s\n",peop[i].name,peop[i].company,peop[i].num,peop[i].mail); } void printf_n(int n) { int j; for(j=0;j

7、f("\n\nPress any key to continue...:"); getchar(); puts("\n\n");} printf_one(j); } getchar(); } int load() { FILE *fp; int i; if((fp=fopen("file","rb"))==NULL) { printf("\nCan not open file\n"); exit(0); } for(i=0;!feof(fp);i++) fread(&peop[i],sizeof(struct people),1,

8、fp); fclose(fp); return(i-1); } int modify_data(int i,int n) { int c,w1; void input(int i); void menu(); do { puts("\n修改選項=>\n\n 1).姓名 2).單位 3).電話號碼 4).郵箱 5).所有數據 6).取消并返回"); printf("請選擇?: [ ]\b\b"); scanf("%d",&c); if(c>6||c<1) {pu

9、ts("\nChoose error! Please again!"); getchar();} }while(c>6||c<1); do { switch(c) { case 1: printf("name:"); scanf("%s",peop[i].name); break; case 2: printf("company:"); scanf("%s",peop[i].company); break; case 3: printf("number:"); scanf("%s",peop[i].num); break;

10、case 4: printf("e-mail:"); scanf("%s",peop[i].mail); break; case 5: input(i); break; case 6: menu(); } puts("\nNow:\n"); printf_face(); printf_one(i); printf("\n確定?\n\n\t1).是 2).不,重新修改 3).返回不保存 [ ]\b\b"); scanf("%d",&w1); }while(w1==2); return(w1); }

11、 void input(int i) { printf_face(); printf("\t"); scanf("%s\t%s\t%s\t%s",peop[i].name,peop[i].company,peop[i].num,peop[i].mail); } void save(int n) { FILE *fp; int i; if((fp=fopen("file","wb"))==NULL) { printf("\nCan not open file\n"); exit(0); } for(i=0;i

12、[i].name[0]!=\0) if(fwrite(&peop[i],sizeof(struct people),1,fp)!=1) printf("file write error\n"); fclose(fp); } void printf_back() { int w; void browse(); void menu(); printf("\n\n\t^_^.Successful. ^_^\n\n"); printf("What do you want to do?\n\n\t1).瀏覽所有\(zhòng)t2).返回: [ ]\b\b"); sc

13、anf("%d",&w); if(w==1) browse(); else menu(); } void main() { void menu(); menu(); } void menu() { int n, w1; void enter(); void add(); void modify(); void browse(); void deleter(); void search(); do { puts("\t************************菜單************************ ")

14、; puts("\t\t*******************1.新建聯系人*******************"); puts("\t\t*******************2.添加聯系人*******************"); puts("\t\t*******************3.修 改*******************"); puts("\t\t*******************4.刪 除*******************"); puts("\t\t*******************5.瀏 覽**

15、*****************"); puts("\t\t*******************6.查 找*******************"); puts("\t\t*******************7.退 出*******************"); puts("\n\n\t********************通訊錄********************* "); printf("請選擇服務種類(1-7) : [ ]\b\b"); scanf("%d",&n); if(n<1||n>7) {w1=1;getc

16、har();} else w1=0; }while(w1==1); switch(n) { case 1: enter(); break; case 2: add(); break; case 3: modify(); break; case 4: deleter(); break; case 5: browse(); break; case 6: search(); break; case 7: exit(0); } } void enter() { int i,n; printf("How many

17、 people(0-%d)?:",N-1); scanf("%d",&n); printf("請輸入數據:\n"); for(i=0;i

18、d",&t); k=n+t; for(i=n;i

19、ify!\nName:"); scanf("%s",s.name); for(i=0;i

20、n\n是否繼續(xù)?\n\n\t1).是 2).保存返回\t[ ]\b\b"); scanf("%d",&w0); w2=1;} else {w0=0; if(w2==0) peop[k]=s;} if((w0!=1)&&(w2==1)) save(n); }while(w0==1); menu(); } void browse() { int n; n=load(); printf_face(); printf_n(n); printf("\t共有 %d 記錄.\n",n);

21、printf("\nPress any key to back..."); getchar(); menu(); } void search() { int w0,k,i,n,w1,w2; struct people s; n=load(); do {printf("請選擇查找類別: 1).姓名 2).電話號碼 [ ]\b\b"); scanf("%d",&w1); if(w1<1||w1>2) {printf("輸入錯誤!請重新輸入!\n"); w2=1;} }while(w2==1); if(w1==1) {do

22、{ k=-1; do { printf("\n\nEnter name that tou want to search!\nName:"); scanf("%s",s.name); for(i=0;i

23、tf("\nWhat do you want to do?\n\t1).繼續(xù) 2).返回菜單 [ ]\b\b"); scanf("%d",&w0); }while(w0==1); menu(); } else { do { k=-1; do { printf("\n\nEnter number that tou want to search!\nNum:"); scanf("%s",s.num); for(i=0;i

24、num)==0) {k=i; s=peop[i];} if(k==-1) printf("\n\n沒有記錄請重新輸入!"); }while(k==-1); printf_face(); printf_one(k); printf("\nWhat do you want to do?\n\t1).繼續(xù) 2).返回菜單 [ ]\b\b"); scanf("%d",&w0); }while(w0==1); menu(); } } void deleter() {struct people s; int i

25、,n,k,w0,w1; n=load(); do { k=-1; printf_face(); printf_n(n); do { printf("\n\nEnter name that you want to delete!\nName:"); scanf("%s",s.name); for(i=0;i

26、 }while(k==-1); printf_face(); printf_one(k); printf("\n確定?\n\t1).是 2).返回 [ ]\b\b"); scanf("%d",&w0); if(w0==1) {peop[k].name[0]=\0; save(n);} else break; printf("\n\t^_^.Successful^_^.\n"); printf("What do you want to do?\n\t1).繼續(xù) 2).返回 [ ]\b\b"); scanf("%d",&w1);

27、 }while(w1==1); menu(); } 【設計體會】 通過為期一周的課程設計,我們對《C語言》這門課程有了更深一步的了解。它是計算機程序設計的重要理論技術基礎,在我們信息與計算科學專業(yè)的學習中占據著十分重要的地位。同時也使我們知道,要學好這門課程,僅學習書本上的知識是不夠的,還要有較強的實踐能力。因為我們學習知識就是為了實踐。而只有多實踐,多編寫程序,才能更好的理解與掌握書本上的東西。 運用《C語言》中的算法思想作數據結構,結合C語言基本知識,編寫一個通訊錄管理系統(tǒng)。通過完成本課題,進一步熟悉C語言的基本知識,并掌握數據結構的一些基本算法思想,掌握C語

28、言的文件操作(包括從磁盤讀入和向磁盤寫入內容),進一步熟悉指針的用法,數組的建立運用和函數的調用等。 【參考文獻】 朱若愚.數據結構[M]. 北京: 電子工業(yè)出版社, 2006.1:41-65 晉良潁.數據結構[M]. 北京:人民郵電出版社, 2007.05: 21-45 劉大有.數據結構[M]. 北京: 高等教育出版社, 2006.3: 30-58 趙文靜. 數據結構與算法[M]. 北京: 科學出版社, 2007.8: 41-64  徐孝凱.數據結構簡明教程.[M]. 北京: 清華大學出版社, 2006.04: 102-115 嚴蔚敏,吳偉民.數據結構(C語言版)[M]. 北京:清華大學出版社, 2007.4: 39-43 傅清祥,王曉東. 數據結構與算法設計[M]. 北京: 電子工業(yè)出版社, 2006.3: 31-46 王敬華,林萍,.陳靜. C語言程序設計[M]. 北京: 清華大學出版社, 2007.10: 22-39 李云清,楊慶紅,揭安全.數據結構(C語言版)[M]. 北京:人民郵電出版社,2006.1: 44-67 [10]李春葆. 數據結構(C語言版)習題與解析[M].北京:清華大學出版社, 2006.1: 47-55

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
5. 裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關資源

更多
正為您匹配相似的精品文檔
關于我們 - 網站聲明 - 網站地圖 - 資源地圖 - 友情鏈接 - 網站客服 - 聯系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網版權所有   聯系電話:18123376007

備案號:ICP2024067431-1 川公網安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對上載內容本身不做任何修改或編輯。若文檔所含內容侵犯了您的版權或隱私,請立即通知裝配圖網,我們立即給予刪除!