




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 課程設(shè)計說明書學(xué) 院、系:專 業(yè):學(xué) 生 姓 名: 學(xué) 號:設(shè) 計 題 目:實(shí)驗設(shè)備管理系統(tǒng) 起 迄 日 期: 指 導(dǎo) 教 師:日期: 2017年5月12日1. 設(shè)計目的 練習(xí)與鞏固C語言程序設(shè)計理論知識,通過實(shí)踐檢驗和提高實(shí)際能力,進(jìn)一步培養(yǎng)自己綜合分析問題和解決問題的能力。掌握運(yùn)用C語言獨(dú)立地編寫調(diào)試應(yīng)用程序和進(jìn)行其它相關(guān)設(shè)計的技能。2.任務(wù)概述要求實(shí)驗設(shè)備管理系統(tǒng)實(shí)現(xiàn)對實(shí)驗設(shè)備基本信息(設(shè)備編號,設(shè)備種類,設(shè)備名稱,設(shè)備價格,設(shè)備購入日期,是否報廢,報廢日期等)的管理。系統(tǒng)應(yīng)給用戶提供一個操作簡便的人機(jī)界面,使用戶可以通過菜單的方式來方便的調(diào)用提供的功能。主要功能(1) 完成對設(shè)備信息
2、的錄入函數(shù)(2) 完成修改某個設(shè)備信息的函數(shù)(3) 根據(jù)給定信息對設(shè)備進(jìn)行分類統(tǒng)計(4) 設(shè)備的破損耗費(fèi)和遺損處理(5) 設(shè)備的查詢3 模塊劃分功能1:添加新的設(shè)備信息功能2: 統(tǒng)計設(shè)備數(shù)量功能3:查找符合條件的設(shè)備及其數(shù)量功能4:對設(shè)備信息按條件進(jìn)行分類排序功能5:修改設(shè)備信息功能6:刪除某條設(shè)備記錄 實(shí)驗設(shè)備管理系統(tǒng)退出系統(tǒng)統(tǒng)計設(shè)備信息顯示設(shè)備信息刪除設(shè)備信息查詢設(shè)備信息修改設(shè)備信息添加設(shè)備信息 圖3.1功能圖圖3.2 菜單圖4 主要函數(shù)說明及其N-S 開始 char flag20 printf(“請輸入你的設(shè)備信息”); printf(“設(shè)備編號”); printf(“設(shè)備名字”); p
3、rintf(“設(shè)備價格”); printf(“設(shè)備購買日期”); printf(“設(shè)備狀態(tài)”); printf(“設(shè)備報廢日期”); strcmp(flag,"y")=0|strcmp(flag,"Y")=0錄入設(shè)備信息的N-S圖,如下圖所示 (1)查找search()int I; char a20,ch10;printf(“nenter you want look name:”); for(i=0;i<count;i+) if(strcmp(devi.devname,a)=0) y n printf(“ ”); 圖4.4 查找操作N-S圖(2)分
4、類sort()int i,chi,sum=0,wei=0,da=0,sao=0;printf(“輸入你想要統(tǒng)計的設(shè)備信息”);scanf("%d",&chi); if(chi=1)y nfor(i=0;i<count;i+) if(chi=2) if(devi.devstate y n=0) Y n for(i=0;i<count;i+) printf(“你n”); if(devi.devsort printf(“報 =1)廢的機(jī)器 y n 數(shù)目為%d wei+ if(devi.devsort=2)n”,sum); y n if(devi.devsort
5、=3) y n printf(“ ”); printf(“ ”);按某種條目進(jìn)行分類也是需要通過查找相同,但不同的是條目的具體內(nèi)容是不確定的,只是把條目內(nèi)容相同的部分進(jìn)行排序使其歸類在一起,使用了冒泡排序法。由于是使用字符串,所以排序的依據(jù)是根據(jù)ASCII碼順序。 圖4.5 分類N-S圖 圖4.5 分類N-S圖(3)刪除delect()讀取文件內(nèi)容,但讀寫時跳過需要刪除的行不讀,然后把讀取出的內(nèi)容重新寫入文件int i,j; char c20;printf("nenter you want delete name :n");for(i=0;i<count;i+) if
6、(strcmp(c,devi.devname)=0)Y Nfor(j=i;j<count-1;j+) devj=devj+1; printf("tttyou had delete %sn",c); count-;output(); 圖4.6 刪除N-S圖5 程序運(yùn)行數(shù)據(jù)及其結(jié)果(1) 錄入input() 圖5.1 顯示內(nèi)容界面圖(2) 修改change()圖5.2 修改界面圖修改后顯示圖5.3 修改結(jié)果(3) 刪除delect()圖5.4 刪除界面刪除后圖5.5 刪除結(jié)果(4) 添加 圖5.6 添加前 圖5.7 添加后(5)
7、;查找check()圖5.8 界面圖5.9 查找結(jié)果(6) 分類sort() 圖5.10 分類界面圖5.11 分類結(jié)果 6 課程設(shè)計心得 這次課程設(shè)計遇到了很多問題,有的是文檔格式的設(shè)置不符合要求,有的是編譯的代碼運(yùn)行不出來,于是又翻出了上學(xué)期的C語言書籍溫習(xí)有關(guān)知識。劃分功能模塊時,對于實(shí)驗設(shè)備方面的知識欠缺,于是在網(wǎng)上查找了相關(guān)知識,結(jié)合網(wǎng)上熱心網(wǎng)友提供的資源。完成了這一步。一個功能對應(yīng)一個函數(shù),有些函數(shù)比較復(fù)雜,請教了其他同學(xué)并結(jié)合網(wǎng)上的例子完成了編寫。第一次修改說明書之前,對于N-S圖的畫法不是太熟悉,于是用了流程圖,后來班長多次強(qiáng)調(diào)才改成了N-S圖,看了看班長在群
8、里發(fā)的例子,又結(jié)合書上的說明,完成了N-S圖。文檔格式的設(shè)置主要通過網(wǎng)上的教程來完成。對于一名新手來說,網(wǎng)上做圖并不是一件容易的事,剛開始不是錯位就是字體太大,有時候修改了文本圖又飛到了下一頁。一次次的修改后總算積攢了一些經(jīng)驗,后來畫多了總算能夠比較快而準(zhǔn)確的畫出來。 C語言是一門實(shí)踐性較強(qiáng)的課程,只學(xué)會書本上的知識是遠(yuǎn)遠(yuǎn)不夠的,還需要實(shí)訓(xùn)來鞏固知識并讓我們學(xué)會運(yùn)用。C語言也是軟件工程后期學(xué)習(xí)的基礎(chǔ)語言,因此必須學(xué)好C語言。一名優(yōu)秀的程序員,不僅要掌握編程方面的知識,還應(yīng)該學(xué)會怎樣使用辦公軟件。附錄:#include "stdio.h"#include "stdl
9、ib.h"#include "cstring"#define COUNT 30void start(); /函數(shù)聲明void input();void change();void sort();void dele();void output();void search();struct deviceInforchar devno30; int devsort; /1 代表微機(jī) 2代表打印機(jī) 3代表掃描機(jī)char devname30;int devprice;char devbuydate30;int devstate;char devdonedate30;devC
10、OUNT;int count=0; main() /主函數(shù) while(1)start(); void start() /啟動菜單 int chi; printf(" 實(shí)驗設(shè)備管理系統(tǒng)n"); printf(" |-|n"); printf(" | * |n"); printf(" | 1.設(shè)備信息的錄入: |n"); printf(" | 2.設(shè)備信息的修改: |n"); printf(" | 3.設(shè)備信息的分類統(tǒng)計: |n"); printf(" | 4.刪除某
11、個設(shè)備: |n"); printf(" | 5.查找某個設(shè)備: |n"); printf(" | 6.退出系統(tǒng): |n"); printf(" | * |n"); printf(" |-|n"); printf(" 輸入你的選擇: "); scanf("%d",&chi); /printf("n"); if(chi=1) input(); else if(chi=2) change(); else if(chi=3) sort(); el
12、se if(chi=4) dele(); else if(chi=5) search(); else if(chi=6) printf("你已經(jīng)退出設(shè)備管理系統(tǒng)!n"); exit(0); else printf(" You Enter The Choice Is Not valid ! n"); void input() /數(shù)據(jù)錄入 char flag20; do printf("請輸入你的設(shè)備信息:n"); printf("設(shè)備編號:"); scanf("%s",devcount.devno
13、); printf("設(shè)備種類(1 代表微機(jī) 2代表打印機(jī) 3代表掃描機(jī)):"); scanf("%d",&devcount.devsort); printf("設(shè)備名字:"); scanf("%s",devcount.devname); printf("設(shè)備價格:"); scanf("%d",&devcount.devprice); printf("設(shè)備購買日期:"); scanf("%s",devcount.devb
14、uydate); printf("設(shè)備狀態(tài)(1未報廢 0報廢):"); scanf("%d",&devcount.devstate); printf("設(shè)備報廢日期:"); scanf("%s",devcount.devdonedate); count+; printf("是否繼續(xù)輸入數(shù)據(jù) y是 n否 : "); scanf("%s",flag); while(strcmp(flag,"y")=0|strcmp(flag,"Y"
15、)=0); output();void change() /數(shù)據(jù)修改 char ch20,a20; int i; printf("nyou sure want change devInfor y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nenter you want change devName:"); scanf("%s",a); for(i=0;i<count;i+)
16、 if(strcmp(devi.devname,a)=0) printf("nyou sure want change dev name(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nname:"); scanf("%s",devi.devname); printf("nyou sure want change dev no(y/n): "); scanf(
17、"%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nno"); scanf("%s",devi.devno); printf("nyou sure want change dev sort(y/n): "); scanf("%s",ch); if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nsort&q
18、uot;); scanf("%d",&devi.devsort); printf("nyou sure want dev price(y/n): "); scanf("%s",ch);if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("nprice"); scanf("%d",&devi.devprice); printf("nyou sure want dev done date(y/n)
19、: "); scanf("%s",ch);if(strcmp(ch,"y")=0|strcmp(ch,"Y")=0) printf("ndone date"); scanf("%s",devi.devdonedate); output();void sort() /數(shù)據(jù)分類顯示 int i,chi,sum=0,wei=0,da=0,sao=0; printf("輸入你想要統(tǒng)計的信息: 1(報廢的機(jī)器總數(shù)) 2(機(jī)器的總類數(shù)目)"); scanf("%d&q
20、uot;,&chi); if(chi=1) for(i=0;i<count;i+) if(devi.devstate=0) sum+; printf("報廢的機(jī)器數(shù)目為 %d n",sum); else if(chi=2) for(i=0;i<count;i+) if(devi.devsort=1) wei+;else if(devi.devsort=2) da+;else if(devi.devsort=3) sao+; printf("微機(jī)數(shù)目為 %d 打印機(jī)數(shù)目為 %d 掃描機(jī)數(shù)目為 %d",wei,da,sao); else printf("你輸入的選項不符合要求!n");void dele() /數(shù)據(jù)刪除int i,j;char c20; printf("nenter you want delete name :n"); printf("name:"
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 《成本與管理會計(英文)》課件-3.1Cost flows in manufacturing business
- 音樂課介紹課件
- 高效節(jié)能電機(jī)項目招投標(biāo)方案(模板)
- 2025年果酒及配制酒項目發(fā)展計劃
- 2025年鋼結(jié)構(gòu)用H型鋼項目發(fā)展計劃
- 2025年太陽能電池用多晶硅、非晶硅項目合作計劃書
- 2025年互聯(lián)網(wǎng)醫(yī)療平臺在線問診服務(wù)質(zhì)量優(yōu)化報告
- 2025年工業(yè)互聯(lián)網(wǎng)平臺漏洞掃描技術(shù)在物聯(lián)網(wǎng)安全防護(hù)中的應(yīng)用研究
- 時尚零售行業(yè)快時尚模式下的品牌合作與聯(lián)合營銷報告
- 智慧城市的公共交通數(shù)據(jù)分析報告
- 合同公司變更協(xié)議書范本
- 文學(xué)概論考試要點(diǎn)試題及答案
- 2024–2025年中國數(shù)據(jù)標(biāo)注產(chǎn)業(yè)深度分析報告
- 學(xué)校粉刷門窗協(xié)議書
- 2025-2031年中國材料預(yù)浸料行業(yè)市場深度研究及發(fā)展趨勢預(yù)測報告
- 法人更換免責(zé)協(xié)議書
- 2025-2030年中國鄉(xiāng)村振興戰(zhàn)略行業(yè)市場發(fā)展分析及前景趨勢與投融資發(fā)展研究報告
- 小球彈簧(蹦極、蹦床)模型-高考物理一輪復(fù)習(xí)模型及解題技巧(解析版)
- 氫能分解與轉(zhuǎn)化技術(shù)創(chuàng)新-全面剖析
- 2025-2030天文望遠(yuǎn)鏡行業(yè)市場深度調(diào)研及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 2025年小學(xué)教師資格考試《綜合素質(zhì)》邏輯推理能力測評題庫(附答案)
評論
0/150
提交評論