c語(yǔ)言實(shí)驗(yàn)設(shè)備管理系統(tǒng)_第1頁(yè)
c語(yǔ)言實(shí)驗(yàn)設(shè)備管理系統(tǒng)_第2頁(yè)
c語(yǔ)言實(shí)驗(yàn)設(shè)備管理系統(tǒng)_第3頁(yè)
c語(yǔ)言實(shí)驗(yàn)設(shè)備管理系統(tǒng)_第4頁(yè)
c語(yǔ)言實(shí)驗(yàn)設(shè)備管理系統(tǒng)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 課程設(shè)計(jì)說明書學(xué) 院、系:專 業(yè):學(xué) 生 姓 名: 學(xué) 號(hào):設(shè) 計(jì) 題 目:實(shí)驗(yàn)設(shè)備管理系統(tǒng) 起 迄 日 期: 指 導(dǎo) 教 師:日期: 2017年5月12日1. 設(shè)計(jì)目的 練習(xí)與鞏固C語(yǔ)言程序設(shè)計(jì)理論知識(shí),通過實(shí)踐檢驗(yàn)和提高實(shí)際能力,進(jìn)一步培養(yǎng)自己綜合分析問題和解決問題的能力。掌握運(yùn)用C語(yǔ)言獨(dú)立地編寫調(diào)試應(yīng)用程序和進(jìn)行其它相關(guān)設(shè)計(jì)的技能。2.任務(wù)概述要求實(shí)驗(yàn)設(shè)備管理系統(tǒng)實(shí)現(xiàn)對(duì)實(shí)驗(yàn)設(shè)備基本信息(設(shè)備編號(hào),設(shè)備種類,設(shè)備名稱,設(shè)備價(jià)格,設(shè)備購(gòu)入日期,是否報(bào)廢,報(bào)廢日期等)的管理。系統(tǒng)應(yīng)給用戶提供一個(gè)操作簡(jiǎn)便的人機(jī)界面,使用戶可以通過菜單的方式來(lái)方便的調(diào)用提供的功能。主要功能(1) 完成對(duì)設(shè)備信息

2、的錄入函數(shù)(2) 完成修改某個(gè)設(shè)備信息的函數(shù)(3) 根據(jù)給定信息對(duì)設(shè)備進(jìn)行分類統(tǒng)計(jì)(4) 設(shè)備的破損耗費(fèi)和遺損處理(5) 設(shè)備的查詢3 模塊劃分功能1:添加新的設(shè)備信息功能2: 統(tǒng)計(jì)設(shè)備數(shù)量功能3:查找符合條件的設(shè)備及其數(shù)量功能4:對(duì)設(shè)備信息按條件進(jìn)行分類排序功能5:修改設(shè)備信息功能6:刪除某條設(shè)備記錄 實(shí)驗(yàn)設(shè)備管理系統(tǒng)退出系統(tǒng)統(tǒng)計(jì)設(shè)備信息顯示設(shè)備信息刪除設(shè)備信息查詢?cè)O(shè)備信息修改設(shè)備信息添加設(shè)備信息 圖3.1功能圖圖3.2 菜單圖4 主要函數(shù)說明及其N-S 開始 char flag20 printf(“請(qǐng)輸入你的設(shè)備信息”); printf(“設(shè)備編號(hào)”); printf(“設(shè)備名字”); p

3、rintf(“設(shè)備價(jià)格”); printf(“設(shè)備購(gòu)買日期”); printf(“設(shè)備狀態(tài)”); printf(“設(shè)備報(bào)廢日期”); 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)計(jì)的設(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(“報(bào) =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)容是不確定的,只是把條目?jī)?nèi)容相同的部分進(jìn)行排序使其歸類在一起,使用了冒泡排序法。由于是使用字符串,所以排序的依據(jù)是根據(jù)ASCII碼順序。 圖4.5 分類N-S圖 圖4.5 分類N-S圖(3)刪除delect()讀取文件內(nèi)容,但讀寫時(shí)跳過需要?jiǎng)h除的行不讀,然后把讀取出的內(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è)計(jì)心得 這次課程設(shè)計(jì)遇到了很多問題,有的是文檔格式的設(shè)置不符合要求,有的是編譯的代碼運(yùn)行不出來(lái),于是又翻出了上學(xué)期的C語(yǔ)言書籍溫習(xí)有關(guān)知識(shí)。劃分功能模塊時(shí),對(duì)于實(shí)驗(yàn)設(shè)備方面的知識(shí)欠缺,于是在網(wǎng)上查找了相關(guān)知識(shí),結(jié)合網(wǎng)上熱心網(wǎng)友提供的資源。完成了這一步。一個(gè)功能對(duì)應(yīng)一個(gè)函數(shù),有些函數(shù)比較復(fù)雜,請(qǐng)教了其他同學(xué)并結(jié)合網(wǎng)上的例子完成了編寫。第一次修改說明書之前,對(duì)于N-S圖的畫法不是太熟悉,于是用了流程圖,后來(lái)班長(zhǎng)多次強(qiáng)調(diào)才改成了N-S圖,看了看班長(zhǎng)在群

8、里發(fā)的例子,又結(jié)合書上的說明,完成了N-S圖。文檔格式的設(shè)置主要通過網(wǎng)上的教程來(lái)完成。對(duì)于一名新手來(lái)說,網(wǎng)上做圖并不是一件容易的事,剛開始不是錯(cuò)位就是字體太大,有時(shí)候修改了文本圖又飛到了下一頁(yè)。一次次的修改后總算積攢了一些經(jīng)驗(yàn),后來(lái)畫多了總算能夠比較快而準(zhǔn)確的畫出來(lái)。 C語(yǔ)言是一門實(shí)踐性較強(qiáng)的課程,只學(xué)會(huì)書本上的知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,還需要實(shí)訓(xùn)來(lái)鞏固知識(shí)并讓我們學(xué)會(huì)運(yùn)用。C語(yǔ)言也是軟件工程后期學(xué)習(xí)的基礎(chǔ)語(yǔ)言,因此必須學(xué)好C語(yǔ)言。一名優(yōu)秀的程序員,不僅要掌握編程方面的知識(shí),還應(yīng)該學(xué)會(huì)怎樣使用辦公軟件。附錄:#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() /啟動(dòng)菜單 int chi; printf(" 實(shí)驗(yàn)設(shè)備管理系統(tǒng)n"); printf(" |-|n"); printf(" | * |n"); printf(" | 1.設(shè)備信息的錄入: |n"); printf(" | 2.設(shè)備信息的修改: |n"); printf(" | 3.設(shè)備信息的分類統(tǒng)計(jì): |n"); printf(" | 4.刪除某

11、個(gè)設(shè)備: |n"); printf(" | 5.查找某個(gè)設(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("請(qǐng)輸入你的設(shè)備信息:n"); printf("設(shè)備編號(hào):"); 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è)備價(jià)格:"); scanf("%d",&devcount.devprice); printf("設(shè)備購(gòu)買日期:"); scanf("%s",devcount.devb

14、uydate); printf("設(shè)備狀態(tài)(1未報(bào)廢 0報(bào)廢):"); scanf("%d",&devcount.devstate); printf("設(shè)備報(bào)廢日期:"); 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)計(jì)的信息: 1(報(bào)廢的機(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("報(bào)廢的機(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("你輸入的選項(xiàng)不符合要求!n");void dele() /數(shù)據(jù)刪除int i,j;char c20; printf("nenter you want delete name :n"); printf("name:"

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論