版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、C語(yǔ)言課程設(shè)計(jì)報(bào)告班 級(jí): 10電子科學(xué)與技術(shù)2班 學(xué)生姓名: 學(xué) 號(hào): 指導(dǎo)老師:日 期: 2011-6-27目 錄1 總體設(shè)計(jì)方案2 使用說(shuō)明及運(yùn)行實(shí)例3 項(xiàng)目源程序代碼4 設(shè)計(jì)心得1.前言(標(biāo)題四號(hào)宋體加黑,正文五號(hào)宋體)職工信息管理系統(tǒng)2.需求分析(參考課程設(shè)計(jì)任務(wù)書)1目的和要求目的:要求熟練掌握C語(yǔ)言的基本知識(shí)和編輯技能; 基本掌握結(jié)構(gòu)化程序設(shè)計(jì)的基本思路和方法。要求:設(shè)計(jì)一個(gè)職工信息管理系統(tǒng),使之能提供以下功能:1、應(yīng)提供一個(gè)界面來(lái)調(diào)用各個(gè)功能,調(diào)用界面和各個(gè)功能的操作界面應(yīng)盡可能清晰美觀!2、輸入功能:職工信息錄入(職工信息用文件保存),可以一次完成若干條記錄的輸入。3、瀏覽功
2、能:完成對(duì)全部職工信息的顯示。4、查找功能:完成按職工的職工號(hào)查詢職工的相關(guān)信息,并顯示。 完成按職工的姓名查詢職工的相關(guān)信息,并顯示。5、刪除功能:通過(guò)輸入職工的姓名完成對(duì)該名職工的信息進(jìn)行刪除。6、添加功能:完成添加新職工的信息的任務(wù)。7、修改功能:通過(guò)輸入職工的姓名完成對(duì)該名職工的信息進(jìn)行修改。8、退出職工信息管理系統(tǒng)。2、信息描述職工信息包括職工號(hào)、姓名、部門、工資、等。3、解決方案1、首先進(jìn)行需求分析,搞清楚系統(tǒng)功能和任務(wù);2、然后在總體設(shè)計(jì)中確定模塊結(jié)構(gòu)、劃分功能模塊,將軟件功能需求分配給所劃分的最單元模塊。確定模塊間的聯(lián)系,確定數(shù)據(jù)結(jié)構(gòu)、文件結(jié)構(gòu)、數(shù)據(jù)庫(kù)模式,確定測(cè)試方法與策略;
3、3、在詳細(xì)設(shè)計(jì)中,為每個(gè)模塊確定采用的算法,選擇適當(dāng)?shù)墓ぞ弑磉_(dá)算法的過(guò)程(流程圖)來(lái)描述模塊的詳細(xì)過(guò)程。確定每一模塊采用的數(shù)據(jù)結(jié)構(gòu)和模塊接口的細(xì)節(jié),包括對(duì)系統(tǒng)外部的接口和用戶界面,對(duì)系統(tǒng)內(nèi)部其他模塊的接口;4、根據(jù)分析編寫C語(yǔ)言代碼。5、進(jìn)度安排 課程設(shè)計(jì)時(shí)間為兩周,分為五個(gè)階段完成:1、 分析設(shè)計(jì)階段。在老師的指導(dǎo)下自主學(xué)習(xí)和鉆研問(wèn)題,明確設(shè)計(jì)要求,找出現(xiàn)實(shí)方法。按照需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)幾個(gè)步驟進(jìn)行。這一階段前1-2天完成;2、 編碼調(diào)試階段。根據(jù)設(shè)計(jì)分析方案編寫C語(yǔ)言代碼,然后調(diào)試該代碼,實(shí)現(xiàn)課題要求的功能。這一階段在3-7天完成;3、總結(jié)報(bào)告階段??偨Y(jié)設(shè)計(jì)工作,寫出課程設(shè)計(jì)說(shuō)明書
4、,包括需求分析、總體設(shè)計(jì)、詳細(xì)設(shè)計(jì)、編碼、測(cè)試的步驟和內(nèi)容。這一階段在8-9天完成;4、考核階段。6、參考資料程序設(shè)計(jì)基礎(chǔ)(C語(yǔ)言)(第三版)陳維 編著 清華大學(xué)出版社C程序設(shè)計(jì)題解與上機(jī)指導(dǎo)(第三版 ) 譚浩強(qiáng) 編著 清華大學(xué)出版社3.總體設(shè)計(jì)(包括功能劃分、數(shù)據(jù)結(jié)構(gòu)、總流程圖)三.各模塊的功能和實(shí)現(xiàn)菜單開(kāi)始根據(jù)菜單輸入n的值選擇程序保存結(jié)束操作完畢請(qǐng)選擇 錯(cuò)N正確 YY1添加職工信息3修改職工信息5輸出職工2查詢職工信息4刪除職工信息0退出流程圖分析圖4.詳細(xì)設(shè)計(jì)(各模塊的流程、函數(shù)介紹)1.菜單模塊:顯示職工管理系統(tǒng)的主菜單,供用戶選擇所需的功能,通過(guò)自己定義的void main()函數(shù)
5、來(lái)實(shí)現(xiàn)。2:添加模塊:添加所有職工的相關(guān)信息,通過(guò)自己定義的void append()函數(shù)來(lái)實(shí)現(xiàn)。3.刪除模塊:刪除需要?jiǎng)h除的職工的所有信息,通過(guò)自己定義的void del()函數(shù)來(lái)實(shí)現(xiàn)。4.按職工號(hào)查詢模塊:可以按職工號(hào)來(lái)查詢職工的相關(guān)信息,通過(guò)自己定義的void numberway()函數(shù)來(lái)實(shí)現(xiàn)。5.修改模塊:可以修改需要修改的職工的相關(guān)信息,通過(guò)自己定義的void modify()函數(shù) 來(lái)實(shí)現(xiàn)。0.退出系統(tǒng)模塊:退出職工信息管理系統(tǒng),通過(guò)頭文件隨土地噢。Stdio.h中的exit()函數(shù)來(lái)實(shí)現(xiàn)。一主菜單while(1) printf(nnntt _n); printf(tt 歡迎進(jìn)入華中
6、科技大學(xué)文華學(xué)院?jiǎn)T工信息系統(tǒng)n); printf(tt 設(shè)計(jì)者:10電科陳方元 學(xué)號(hào)5n); printf(tt n); printf(ntttt添加,請(qǐng)按1); printf(ntttt查找,請(qǐng)按2); printf(ntttt修改,請(qǐng)按3); printf(ntttt刪除,請(qǐng)按4); printf(ntttt輸出,請(qǐng)按5);printf(ntttt退出,請(qǐng)按0n); scanf(%d,&m);二選擇(1)添加void output() if(fp=fopen(worker.xls,r)=NULL) printf(n不能打開(kāi)該文件!);exit();printf(nn%20sn,職工信息管理
7、系統(tǒng));while(!feof(fp)fscanf(fp,%s%s%s%s%sn,,one.num,one.department,one.position,one.wanges);(2)查找void search() int l;printf(tttt姓名查找按:1n);printf(tttt職工號(hào)查按:2n); scanf(%d,&l);if(l0&l3)switch(l)case 1:nameway();break;case 2:numway();break; printf(nn操作完畢!);else printf(tttt輸入有誤!);(3)修改void modify()
8、 int k=0;long a;char namekey8;printf(n請(qǐng)輸入您要修改的職工的姓名:);scanf(%s,namekey);if(fp=fopen(worker.xls,r+)=NULL) printf(n不能打開(kāi)該文件!);exit();while(!feof(fp)a=ftell(fp); fscanf(fp,%s%s%s%s%sn,,one.num,one.department,one.position,one.wanges);if(!strcmp(namekey,)k=1;break;(4)刪除void delete() int m,
9、k=0;long a;char namekey8, valid4;printf(n請(qǐng)輸入您要?jiǎng)h除的職工姓名:);scanf(%s,namekey);if(fp=fopen(worker.xls,r+)=NULL) printf(n不能打開(kāi)該文件!);exit();5.程序清單#includestruct char name8;char num10;char position15;char wanges10;char department15;one; FILE *fp; void output(); void search(); void append(); void modify(); vo
10、id delete(); void exit(); void nameway();void numway();void main() int m;while(1) printf(nnntt _n); printf(tt 歡迎進(jìn)入華中科技大學(xué)文華學(xué)院?jiǎn)T工信息系統(tǒng)n); printf(tt 設(shè)計(jì)者:10電科陳方元 學(xué)號(hào)5n); printf(tt n); printf(ntttt添加,請(qǐng)按1); printf(ntttt查找,請(qǐng)按2); printf(ntttt修改,請(qǐng)按3); printf(ntttt刪除,請(qǐng)按4); printf(ntttt輸出,請(qǐng)按5);printf(ntttt退出,請(qǐng)按0n
11、); scanf(%d,&m);if(m=0&m0&l3)switch(l)case 1:nameway();break;case 2:numway();break; printf(nn操作完畢!);else printf(tttt輸入有誤!); void nameway()int k=0;char nam8;printf(n請(qǐng)輸入您要查找的職工姓名:);scanf(%s,nam);if(fp=fopen(worker.xls,rb)=NULL) printf(n不能打開(kāi)文件!);exit();while(!feof(fp)fscanf(fp,%s%s%s%s%sn,,one.
12、num,one.department,one.position,one.wanges);if(strcmp(nam,)=0)printf(nn已查到,記錄為:);printf(n%-10s%-8s%-8s%-8s%-8sn,,one.num,one.department,one.position,one.wanges);k=1;if(k=0)printf(nn對(duì)不起,查無(wú)此人!。);fclose(fp);void numway() int i=0; char numb10;printf(tttt輸入你要查詢的共號(hào)n);scanf(%s,numb);if(fp=f
13、open(worker.xls,rb)=NULL) printf(n不能打開(kāi)文件!);exit();while(!feof(fp)fscanf(fp,%s%s%s%s%sn,,one.num,one.department,one.position,one.wanges);if(!strcmp(numb,one.num)printf(nn已查到,記錄為:);printf(n%-10s%-8s%-8s%-8s%-8s%n,,one.num,one.department,one.position,one.wanges);i=1;if(!i)printf(nn對(duì)不起,查
14、無(wú)此人!。);fclose(fp); void modify() int k=0;long a;char namekey8;printf(n請(qǐng)輸入您要修改的職工的姓名:);scanf(%s,namekey);if(fp=fopen(worker.xls,r+)=NULL) printf(n不能打開(kāi)該文件!);exit();while(!feof(fp)a=ftell(fp); fscanf(fp,%s%s%s%s%sn,,one.num,one.department,one.position,one.wanges);if(!strcmp(namekey,)k=1
15、;break;if(k)printf(n已查到,記錄為:);printf(n%-10s%-8s%-8s%-8s%n,,one.num,one.position,one.wanges);printf(n請(qǐng)輸入信息(按照姓名、職工號(hào)、部門、職位、工資的順序輸入):);scanf(%s%s%s%s,,one.num,one.position,one.wanges);fseek(fp,a,0);fprintf(fp,%-10s%-8s%-8s%-8s%-8s%n,,one.num,one.department,one.position,one.wange
16、s);elseprintf(n對(duì)不起,查無(wú)此人,無(wú)法進(jìn)行修改。);fclose(fp); void delete() int m,k=0;long a;char namekey8, valid4;printf(n請(qǐng)輸入您要?jiǎng)h除的職工姓名:);scanf(%s,namekey);if(fp=fopen(worker.xls,r+)=NULL) printf(n不能打開(kāi)該文件!);exit();while(!feof(fp)a=ftell(fp); fscanf(fp,%s%s%s%s%sn,,one.num,one.department,one.position,one.wanges);if(strcmp(namekey,)=0)k=1;break;if(k=1)printf(n已查到,記錄為);printf(n%-10s%-8s%-8s%-8s%-8sn,,one.num,one.department,one.position,one.wanges);pri
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 事業(yè)單位員工合同協(xié)議書
- 企業(yè)資產(chǎn)購(gòu)置合同模板
- 機(jī)構(gòu)用工合同協(xié)議書
- 實(shí)驗(yàn)室合作協(xié)議范本
- 工業(yè)廠房租賃合同標(biāo)準(zhǔn)文本
- 期貨交易數(shù)據(jù)服務(wù)協(xié)議
- 廣東省室內(nèi)裝潢設(shè)計(jì)工程施工合同示例
- 保安服務(wù)合同協(xié)議書范本
- 房屋翻新合同的范本
- 廣東省批發(fā)花卉選購(gòu)合同
- 人教版數(shù)學(xué)七年級(jí)上冊(cè)動(dòng)點(diǎn)專題講義
- 安全生產(chǎn)隱患識(shí)別圖集 問(wèn)題圖片和整改圖片對(duì)比 危險(xiǎn)源識(shí)別(中)
- OSA患者圍術(shù)期管理的專家共識(shí)
- 陜西省西安市碑林區(qū)2023-2024學(xué)年三年級(jí)上學(xué)期期中數(shù)學(xué)試卷
- 河北省滄衡八校聯(lián)盟2023-2024學(xué)年高二上學(xué)期11月期中數(shù)學(xué)試題
- 我的家鄉(xiāng)湖北咸寧介紹
- 幼教培訓(xùn)課件:《幼兒園班級(jí)區(qū)域創(chuàng)設(shè)》
- 行政辦公室行政辦公管理檢查開(kāi)展情況匯報(bào)
- 大課間跑操評(píng)分表
- 老舊小區(qū)改造室外給排水工程施工方案和技術(shù)措施
- 食品的感官檢驗(yàn)-感官檢驗(yàn)的常用方法(食品檢測(cè)技術(shù)課件)
評(píng)論
0/150
提交評(píng)論