歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

C語言課程設(shè)計(jì)報告-c語言課程設(shè)計(jì)

  • 資源ID:23623234       資源大?。?span id="xnsxcn0" class="font-tahoma">64.91KB        全文頁數(shù):10頁
  • 資源格式: DOC        下載積分:9.9積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要9.9積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗(yàn)證碼:   換一換

 
賬號:
密碼:
驗(yàn)證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點(diǎn)擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

C語言課程設(shè)計(jì)報告-c語言課程設(shè)計(jì)

C語言課程設(shè)計(jì)論文學(xué)生姓名: 陳丹 學(xué)生學(xué)號: 20091020101 所在班級: 信息與計(jì)算科學(xué)一班 任課教師: 馬老師 通訊錄管理系統(tǒng)【設(shè)計(jì)目的】設(shè)計(jì)“通訊錄管理系統(tǒng)”使其具有數(shù)據(jù)插入、修改、刪除、顯示和查詢等功能。(1) 數(shù)據(jù)包括:人名、工作單位、電話號碼和E-mail地址。(2) 可對記錄中的姓名和電話號碼進(jìn)行修改。(3) 可增加或刪除記錄。(4) 可顯示所有保存的記錄。(5) 可按人名或電話號碼進(jìn)行查詢?!驹O(shè)計(jì)思路】根據(jù)要求,電話簿數(shù)據(jù)以文本文件存放在文件中,故需要提供文件的輸入、輸出等操作;還需要保存記錄以進(jìn)行修改,刪除,查找等操作;另外還應(yīng)提供鍵盤式選擇菜單實(shí)現(xiàn)功能選擇。 【總體設(shè)計(jì)】通訊錄管理系統(tǒng)數(shù)據(jù)輸入數(shù)據(jù)修改刪除數(shù)據(jù)添加查找瀏覽圖1 系統(tǒng)功能模塊圖 【詳細(xì)設(shè)計(jì)】1. 主函數(shù)主函數(shù)設(shè)計(jì)要求簡潔,只提供部分提示語和函數(shù)的調(diào)用【程序】 顯示一系列功能選項(xiàng)輸入n,判斷n是否是17 ?根據(jù)n的值調(diào)用各功能模塊函數(shù)結(jié)束開始n 圖2. 主函數(shù)流程圖Void menu() /*主界面*/ int n, w1; void enter(); void add(); void modify(); void browse(); void deleter(); void search(); do puts("t*菜單*tnn"); puts("tttt1.新建聯(lián)系人"); puts("tttt2.添加聯(lián)系人"); puts("tttt3.修改"); puts("tttt4.刪除"); puts("tttt5.瀏覽"); puts("tttt6.查找"); puts("tttt7.退出"); puts("nnt*通訊錄*tn"); printf("請選擇服務(wù)種類(1-7) : bb"); scanf("%d",&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<stdio.h>#include<string.h>struct peoplechar name20; char company50; char num15; char mail20;peopN;void printf_face() printf("nt姓名t單位t電話號碼t郵箱n"); void printf_one(int i) printf("t%st%st%st%sn",peopi.name,peopi.company,peopi.num,peopi.mail); void printf_n(int n) int j; for(j=0;j<n;j+) if(j!=0)&&(j%10=0) printf("nnPress any key to continue.:"); getchar(); puts("nn"); printf_one(j); getchar();int load() FILE *fp; int i; if(fp=fopen("file","rb")=NULL) printf("nCan not open filen"); exit(0);for(i=0;!feof(fp);i+) fread(&peopi,sizeof(struct people),1,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修改選項(xiàng)=>nn 1).姓名 2).單位 3).電話號碼 4).郵箱 5).所有數(shù)據(jù) 6).取消并返回"); printf("請選擇?: bb"); scanf("%d",&c); if(c>6|c<1) puts("nChoose error! Please again!"); getchar(); while(c>6|c<1); do switch(c) case 1: printf("name:"); scanf("%s",peopi.name); break; case 2: printf("company:"); scanf("%s",peopi.company); break; case 3: printf("number:"); scanf("%s",peopi.num); break; case 4: printf("e-mail:"); scanf("%s",peopi.mail); break; case 5: input(i); break; case 6: menu(); puts("nNow:n"); printf_face(); printf_one(i); printf("n確定?nnt1).是 2).不,重新修改 3).返回不保存 bb"); scanf("%d",&w1); while(w1=2); return(w1);void input(int i) printf_face(); printf("t"); scanf("%st%st%st%s",peopi.name,peopi.company,peopi.num,peopi.mail); void save(int n) FILE *fp; int i; if(fp=fopen("file","wb")=NULL) printf("nCan not open filen"); exit(0); for(i=0;i<n;i+) if(peopi.name0!=0) if(fwrite(&peopi,sizeof(struct people),1,fp)!=1) printf("file write errorn"); fclose(fp);void printf_back() int w; void browse(); void menu(); printf("nnt_.Successful. _nn"); printf("What do you want to do?nnt1).瀏覽所有t2).返回: bb"); scanf("%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*菜單* "); puts("tt*1.新建聯(lián)系人*"); puts("tt*2.添加聯(lián)系人*"); puts("tt*3.修 改*"); puts("tt*4.刪 除*"); puts("tt*5.瀏 覽*"); puts("tt*6.查 找*"); puts("tt*7.退 出*"); puts("nnt*通訊錄* "); printf("請選擇服務(wù)種類(1-7) : bb"); scanf("%d",&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; 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 people(0-%d)?:",N-1); scanf("%d",&n); printf("請輸入數(shù)據(jù):n"); for(i=0;i<n;i+) printf("n輸入第 %d個記錄.n",i+1); input(i); if(i!=0) save(n); printf_back();void add() int i,n,k,t; n=load(); printf("How many people do you want to add(0-%d)?:",N-n-1); scanf("%d",&t); k=n+t; for(i=n;i<k;i+) printf("n輸入第 %d個記錄.n",i-n+1); input(i); save(k); printf_back();void modify() struct people s; int i,n,k,w0=1,w1,w2=0; n=load(); do k=-1; printf_face(); printf_n(n); do printf("nnEnter name that you want to modify!nName:"); scanf("%s",s.name); for(i=0;i<n;i+) if(strcmp(s.name,peopi.name)=0) k=i; s=peopi; if(k=-1) printf("nn沒有記錄請重新輸入!"); while(k=-1); printf_face(); printf_one(k); w1=modify_data(k,n); if(w1=1) printf("nt_.Successful _.nn是否繼續(xù)?nnt1).是 2).保存返回t bb"); scanf("%d",&w0); w2=1; else w0=0; if(w2=0) peopk=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); 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).電話號碼 bb"); scanf("%d",&w1); if(w1<1|w1>2) printf("輸入錯誤!請重新輸入!n"); w2=1; while(w2=1); if(w1=1) do k=-1; do printf("nnEnter name that tou want to search!nName:"); scanf("%s",s.name); for(i=0;i<n;i+) if(strcmp(s.name,peopi.name)=0) k=i; s=peopi; if(k=-1) printf("nn沒有記錄請重新輸入!"); while(k=-1); printf_face(); printf_one(k); printf("nWhat do you want to do?nt1).繼續(xù) 2).返回菜單 bb"); scanf("%d",&w0); while(w0=1); menu(); else do k=-1; do printf("nnEnter number that tou want to search!nNum:"); scanf("%s",s.num); for(i=0;i<n;i+) if(strcmp(s.num,peopi.num)=0) k=i; s=peopi; if(k=-1) printf("nn沒有記錄請重新輸入!"); while(k=-1); printf_face(); printf_one(k); printf("nWhat do you want to do?nt1).繼續(xù) 2).返回菜單 bb"); scanf("%d",&w0); while(w0=1); menu(); void deleter()struct people s; int i,n,k,w0,w1; n=load(); do k=-1; printf_face(); printf_n(n); do printf("nnEnter name that you want to delete!nName:"); scanf("%s",s.name); for(i=0;i<n;i+) if(strcmp(s.name,peopi.name)=0) k=i; s=peopi; if(k=-1) printf("nn沒有記錄請重新輸入!"); while(k=-1); printf_face(); printf_one(k); printf("n確定?nt1).是 2).返回 bb"); scanf("%d",&w0); if(w0=1) peopk.name0=0; save(n); else break; printf("nt_.Successful_.n"); printf("What do you want to do?nt1).繼續(xù) 2).返回 bb"); scanf("%d",&w1); while(w1=1); menu();【設(shè)計(jì)體會】通過為期一周的課程設(shè)計(jì),我們對C語言這門課程有了更深一步的了解。它是計(jì)算機(jī)程序設(shè)計(jì)的重要理論技術(shù)基礎(chǔ),在我們信息與計(jì)算科學(xué)專業(yè)的學(xué)習(xí)中占據(jù)著十分重要的地位。同時也使我們知道,要學(xué)好這門課程,僅學(xué)習(xí)書本上的知識是不夠的,還要有較強(qiáng)的實(shí)踐能力。因?yàn)槲覀儗W(xué)習(xí)知識就是為了實(shí)踐。而只有多實(shí)踐,多編寫程序,才能更好的理解與掌握書本上的東西。運(yùn)用C語言中的算法思想作數(shù)據(jù)結(jié)構(gòu),結(jié)合C語言基本知識,編寫一個通訊錄管理系統(tǒng)。通過完成本課題,進(jìn)一步熟悉C語言的基本知識,并掌握數(shù)據(jù)結(jié)構(gòu)的一些基本算法思想,掌握C語言的文件操作(包括從磁盤讀入和向磁盤寫入內(nèi)容),進(jìn)一步熟悉指針的用法,數(shù)組的建立運(yùn)用和函數(shù)的調(diào)用等?!緟⒖嘉墨I(xiàn)】朱若愚.數(shù)據(jù)結(jié)構(gòu)M. 北京: 電子工業(yè)出版社, 2006.1:41-65晉良潁.數(shù)據(jù)結(jié)構(gòu)M. 北京:人民郵電出版社, 2007.05: 21-45劉大有.數(shù)據(jù)結(jié)構(gòu)M. 北京: 高等教育出版社, 2006.3: 30-58趙文靜. 數(shù)據(jù)結(jié)構(gòu)與算法M. 北京: 科學(xué)出版社, 2007.8: 41-64徐孝凱.數(shù)據(jù)結(jié)構(gòu)簡明教程.M. 北京: 清華大學(xué)出版社, 2006.04: 102-115嚴(yán)蔚敏,吳偉民.數(shù)據(jù)結(jié)構(gòu)(C語言版)M. 北京:清華大學(xué)出版社, 2007.4: 39-43傅清祥,王曉東. 數(shù)據(jù)結(jié)構(gòu)與算法設(shè)計(jì)M. 北京: 電子工業(yè)出版社, 2006.3: 31-46王敬華,林萍,.陳靜. C語言程序設(shè)計(jì)M. 北京: 清華大學(xué)出版社, 2007.10: 22-39李云清,楊慶紅,揭安全.數(shù)據(jù)結(jié)構(gòu)(C語言版)M. 北京:人民郵電出版社,2006.1: 44-67 10李春葆. 數(shù)據(jù)結(jié)構(gòu)(C語言版)習(xí)題與解析M.北京:清華大學(xué)出版社, 2006.1: 47-55

注意事項(xiàng)

本文(C語言課程設(shè)計(jì)報告-c語言課程設(shè)計(jì))為本站會員(jun****875)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點(diǎn)擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因?yàn)榫W(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


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