c語言程序課程設(shè)計實驗設(shè)備管理系統(tǒng)_第1頁
c語言程序課程設(shè)計實驗設(shè)備管理系統(tǒng)_第2頁
c語言程序課程設(shè)計實驗設(shè)備管理系統(tǒng)_第3頁
c語言程序課程設(shè)計實驗設(shè)備管理系統(tǒng)_第4頁
c語言程序課程設(shè)計實驗設(shè)備管理系統(tǒng)_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課程設(shè)計報告書實驗設(shè)備管理系統(tǒng) 班 級: 學(xué) 號: 9 姓 名: 指導(dǎo)教師: 二零一零年七月十五號課程設(shè)計報告內(nèi)容1. 選擇題目 題目:實驗設(shè)備管理系統(tǒng)2. 內(nèi)容摘要摘要:實驗室設(shè)備管理系統(tǒng)是典型的設(shè)備信息管理系統(tǒng),要求能為學(xué)校實驗室管理提供信息化動態(tài)化的管理,方便實驗室設(shè)備管理工作,提高設(shè)備管理質(zhì)量和使用效率。而且系統(tǒng)應(yīng)符合設(shè)備管理的有關(guān)規(guī)定,包括新設(shè)備的申請、購買確認(rèn)、新設(shè)備信息錄入、舊設(shè)備維修和報廢及用戶管理等。能滿足日常工作的基本需要,并達到操作過程中的直觀、方便、實用、安全等有關(guān)要求。實驗室設(shè)備管理系統(tǒng)是一個典型的信息管理系統(tǒng),采用面向?qū)ο蟮姆治龇椒?給出系統(tǒng)的基本結(jié)構(gòu)設(shè)計特色設(shè)計模

2、型及實現(xiàn)途徑,并且對系統(tǒng)的開發(fā)技術(shù)進行研究本系統(tǒng)是一個為適應(yīng)對學(xué)校實驗室設(shè)備管理的迫切需求而設(shè)計開發(fā)的軟件系統(tǒng)。3. 索引關(guān)鍵詞關(guān)鍵詞:結(jié)構(gòu)體、文件、數(shù)組、函數(shù)4.目錄l 目錄l 題目要求3l 設(shè)計思想3-4l 系統(tǒng)完成及功能4l 界面設(shè)計4-5l 核心算法及說明.5-11l 結(jié)論11l 考資料12l 后記12l 附錄12-135. 正文包括課程設(shè)計的要求,設(shè)計思想,系統(tǒng)完成的功能,及界面設(shè)計,核心算法及說明,和結(jié)論幾部分,正文必須從頁首開始。5.1課程設(shè)計題目要求實驗設(shè)備信息包括:設(shè)備編號,設(shè)備種類(如:微機、打印機、掃描儀等等),設(shè)備名稱,設(shè)備價格,設(shè)備購入日期,是否報廢,報廢日期等。主要

3、功能:1、能夠完成對設(shè)備的錄入和修改2、對設(shè)備進行分類統(tǒng)計3、設(shè)備的破損耗費和遺損處理4、設(shè)備的查詢要求:使用二進制文件方式存儲數(shù)據(jù),系統(tǒng)以菜單方式工作5.2設(shè)計思想第一,應(yīng)該具有自動初始化的功能。實際網(wǎng)絡(luò)中被管設(shè)備數(shù)量巨大,通常能達到百位量級,如果初始化時需要管理員手動輸入所有被管設(shè)備的基本信息,這是一個相當(dāng)枯燥漫長的過程,會大大降低系統(tǒng)的實用性。第二,在長時間的運行過程中,系統(tǒng)數(shù)據(jù)要與實際設(shè)備配置保持一致。實際網(wǎng)絡(luò)中變化是經(jīng)常發(fā)生的,包括網(wǎng)絡(luò)的拓?fù)?、設(shè)備的配置等都會為了運行的需求而經(jīng)常變化。那么,最好能讓系統(tǒng)中的數(shù)據(jù)能自動更新,而不需要每次改變實際網(wǎng)絡(luò)配置后,還需要管理員手動更新。第三,操

4、作簡單直觀,不依賴于太多的專業(yè)知識。無論是信息的展示,還是可以進行的操作,希望都能以簡單的頁面元素來表達,管理員通過簡單的點擊、選擇等操作就能完成大部分管理任務(wù)。5.3系統(tǒng)完成功能及功能框圖為彌補手工管理設(shè)備信息造成的資源共享困難、管理手續(xù)繁瑣等問題,設(shè)備管理系統(tǒng)應(yīng)能夠滿足設(shè)備信息共享的需求,方便快捷的得到所需要的信息,對實驗室的幫助很大。系統(tǒng)功能如圖所示,其主要功能包括:設(shè)備的錄入和修改、對設(shè)備進行分類統(tǒng)計、設(shè)備的破損耗費和遺損處理、設(shè)備的查詢。系統(tǒng)功能設(shè)計設(shè)備的查詢設(shè)備的破損耗費和遺損處理對設(shè)備進行分類統(tǒng)計設(shè)備的錄入和修改5.4界面設(shè)計5. 5核心算法:設(shè)備結(jié)構(gòu)體struct shebei

5、 char no10; /編號 char kind10; /設(shè)備種類 char name10; / 設(shè)備名稱 float price; /價格 char time10; / 日期 int bao; /是否報廢 char time110; /報廢日期 int po;/是否破損 float price1;/破損花費 char way10; /處理方式;struct data int count; / 當(dāng)前設(shè)備數(shù)組中設(shè)備的個數(shù) struct shebei shemax; / 設(shè)備數(shù)組 dd;將數(shù)據(jù)從結(jié)構(gòu)體數(shù)組保存到文件中void save_data() file *fp; int i,k; k=dd

6、.count; fp=fopen(c:/dada.dat,wb); fwrite(&k,sizeof(int),1,fp); for(i=0;ik;i+) fwrite(&dd.shei,sizeof(struct shebei),1,fp); fclose(fp);將數(shù)據(jù)從文件讀到結(jié)構(gòu)體數(shù)組中void read_data()file *fp;int i,k;struct shebei st;k=0;if(access(c:/dada.dat,0)=-1)/ 如果文件不存在fp=fopen(c:/dada.dat,wb);fwrite(&k,sizeof(int),1,fp);fclose(f

7、p);fp=fopen(c:/dada.dat,rb);fread(&k,sizeof(int),1,fp);dd.count=k;for(i=0;ik;i+)fread(&st,sizeof(struct shebei),1,fp); strcpy(,); strcpy(dd.shei.no,st.no); strcpy(dd.shei.kind,st.kind); dd.shei.price=st.price; strcpy(dd.shei.time,st.time); dd.shei.bao=st.bao; dd.shei.po=st.po; str

8、cpy(dd.shei.time1,st.time1); strcpy(dd.shei.way,st.way); dd.shei.price1=st.price1; fclose(fp);按回車后回到主菜單void to_menu() char c1,c2; printf(nnn按回車鍵返回主菜單.); scanf(%c%c,&c1,&c2); menu();查看所有設(shè)備信息void view_data() int i; printf(編號t種類t名稱t價格t購入日期t報廢狀態(tài)(0-報廢,1-未報廢)t破損狀態(tài)(0-破損,1-未破損)); printf(n-n); for(i=0;idd.co

9、unt;i+) printf(%st%st%st%.2ft%st%dt%dn,dd.shei.no,dd.shei.kind,,dd.shei.price,dd.shei.time,dd.shei.bao,dd.shei.po); if(dd.shei.bao=0)printf(該設(shè)備報廢日期:%st,dd.shei.time1); if(dd.shei.po=0)printf(該設(shè)備破損花費:%.2ft,dd.shei.price1); if(dd.shei.bao=0|dd.shei.po=0)printf(該設(shè)備處理方式為:%sn,dd.shei.way); 輸入

10、設(shè)備記錄void add_data() struct shebei st; int b; int i,j,k; while(1) j=0; printf(n請輸入設(shè)備信息:n); printf(編號t種類t名稱t價格t購入日期t); printf(n-n); scanf(%s%s%s%f%s,st.no,st.kind,,&st.price,st.time); for(i=0;idd.count;i+) if(strcmp(dd.shei.no,st.no)=0) j=1; printf(輸入的設(shè)備編號有重復(fù),請重新輸入!); break; if(j=1)continue; if

11、(j=0) k = dd.count; strcpy(,); strcpy(dd.shek.no,st.no); strcpy(dd.shek.kind,st.kind); dd.shek.price=st.price; strcpy(dd.shek.time,st.time); dd.shek.bao=1; dd.shek.po=1; dd.count+; printf(nn繼續(xù)添加設(shè)備信息1-yes 0-no:); scanf(%d,&b); if(b=0) break; save_data();編輯設(shè)備報廢與破損記錄void edit_data()i

12、nt i,k;char no10,time110,way10;int bao,po;float price1;printf(n請輸入要編輯設(shè)備的編號:);scanf(%s,no);k=-1;for(i=0;idd.count;i+)if(strcmp(dd.shei.no,no)=0)k=i;break;if(k=-1)printf(nn沒有找到該設(shè)備(編號-%s)!,no);elseprintf(n名稱:%s,編號:%s,種類:%s,價格:%.2f,購入日期:%s,,dd.shek.no,dd.shek.kind,dd.shek.price,dd.shek.time)

13、;printf(n設(shè)備報廢與否記錄:); printf(n設(shè)備狀態(tài)(0-報廢,1-未報廢):); scanf(%d,&bao); dd.shek.bao=bao; if(bao=0) printf(n報廢日期:); scanf(%s,time1); strcpy(dd.shek.time1,time1); if(bao=1) printf(n設(shè)備破損狀態(tài):(0-破損,1-未破損) ); scanf(%d,&po); dd.shek.po=po; if(po=0) printf(n破損耗費:); scanf(%f,&price1); dd.shek.price1=price1; if(bao=0

14、|po=0) printf(n處理方式:); scanf(%s,way); strcpy(dd.shek.way,way); save_data();printf(nn編輯設(shè)備記錄(編號-%s)成功!,no);查詢(編號)void query_data_no()int i,k;char no5;printf(n請輸入要查詢設(shè)備的編號:);scanf(%s,no);k=-1;for(i=0;idd.count;i+)if(strcmp(dd.shei.no,no)=0)k=i; printf(編號t種類t名稱t價格t購入日期t報廢狀態(tài)(0-報廢,1-未報廢)t破損狀態(tài)(0-破損,1-未破損));

15、 printf(n-n); printf(%st%st%st%.2ft%st%dt%dn,dd.shei.no,dd.shei.kind,,dd.shei.price,dd.shei.time,dd.shei.bao,dd.shei.po); if(dd.shei.bao=0)printf(該設(shè)備報廢日期:%st,dd.shei.time1); if(dd.shei.po=0)printf(該設(shè)備破損花費:%.2ft,dd.shei.price1); if(dd.shei.bao=0|dd.shei.po=0)printf(該設(shè)備處理方式為:%sn,dd.shei.wa

16、y); if(k=-1)printf(nn沒有找到該設(shè)備(編號-%s)!,no);設(shè)備分類統(tǒng)計void count_data()char kind10;int i,s=0;printf(請輸入要查詢的設(shè)備種類: );scanf(%s,kind);for(i=0;idd.count;i+)if(strcmp(dd.shei.kind,kind)=0)s+;printf(統(tǒng)計結(jié)果:%s種類的設(shè)備有%d件。,kind,s);5.6結(jié)論:能夠清楚的實現(xiàn)本程序的功能。此程序設(shè)計讓我很好的掌握了c語言的一些知識,但也反映了一些不足之處,而且本程序的功能不是很完善,隨著以后的學(xué)習(xí),我會更好的去探究更完美的更實用的管理系統(tǒng)。6.后記通過“實驗設(shè)備管理系統(tǒng)”設(shè)計,增加了我學(xué)習(xí)軟件技術(shù)的興趣,雖然還不明確軟件技術(shù)包含的具體內(nèi)容,但從c語言這門課程開始,已發(fā)現(xiàn)程序設(shè)計的樂趣,在學(xué)習(xí)c語言的過程中也學(xué)到了許多計算機應(yīng)用基礎(chǔ)知識,對計算機的機體也有了一個大體的了解。 在具體操作中對這學(xué)期所學(xué)的c語言的理論知識得到鞏固,在實際操作中也發(fā)現(xiàn)了自己的不足之處,在以后的上機中應(yīng)特別注意,同時也體會到了c語言具有的語句簡潔,使用靈活,執(zhí)行效率高等的特點。通過實際操作,學(xué)會 c語言程序編程的基本步驟、基本方法,開發(fā)了自己的邏輯思維能力,培養(yǎng)了分析問題、解決問題的能力

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論