版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
TOC\o"1-5"\h\z\o"CurrentDocument"第一章課程設(shè)計目的和要求 1\o"CurrentDocument"1.1課程設(shè)計的目的 1\o"CurrentDocument"1.2課程設(shè)計實現(xiàn)的要求 1\o"CurrentDocument"第二章課程設(shè)計任務(wù)內(nèi)容 2\o"CurrentDocument"第三章詳細(xì)設(shè)計說 3\o"CurrentDocument"3.1模塊 3\o"CurrentDocument"3.1.1模塊描述 3\o"CurrentDocument"3.1.2功能模塊圖 3\o"CurrentDocument"性能 4\o"CurrentDocument"3.3函數(shù)說明 4\o"CurrentDocument"3.3.1學(xué)生信息錄入函數(shù) 43.3.2所有學(xué)生上機費用計算函數(shù) 6\o"CurrentDocument"3.3.3學(xué)生信息查詢函數(shù) 8\o"CurrentDocument"3.4系統(tǒng)流程圖 11\o"CurrentDocument"第四章軟件使用說明 12\o"CurrentDocument"4.1軟件使用說明及出現(xiàn)的問題 12\o"CurrentDocument"4.2運行結(jié)果 12\o"CurrentDocument"4.2.1初始運行界面 12\o"CurrentDocument"查詢界面 12\o"CurrentDocument"計算界面 13\o"CurrentDocument"第五章課程設(shè)計心得與體會 14\o"CurrentDocument"附錄一參考文獻(xiàn) 錯誤!未定義書簽。\o"CurrentDocument"附錄二程序清單 16機房收費管理系統(tǒng)第一章課程設(shè)計目的和要求1.1課程設(shè)計的目的進(jìn)一步鞏固《C++程序設(shè)計》所學(xué)的知識,特別加強數(shù)組,指針,結(jié)構(gòu)體,文件數(shù)據(jù)類型的應(yīng)用,熟悉面向過程的結(jié)構(gòu)化和面向?qū)ο罂梢暬绦蛟O(shè)計方法,培養(yǎng)結(jié)構(gòu)化程序設(shè)計的思想,加深對高級語言基本語言要素和控制結(jié)構(gòu)的理解,鍛煉程序設(shè)計的能力,以及用C/C++語言解決實際問題的能力,為以后后續(xù)課程的學(xué)習(xí)打好基礎(chǔ)。此課程設(shè)計著眼于知識的運用,把平常學(xué)的知識運用到課程實踐中來,本身就是考察我們知識運用能力。要求熟悉運用一些編程軟件(如:MicrosoftVisualC++6.0),對我們所學(xué)的理論知識進(jìn)一步的深化。1.2課程設(shè)計實現(xiàn)的要求在程序設(shè)計中,既可以用傳統(tǒng)的結(jié)構(gòu)化程序設(shè)計方法,也可以用先進(jìn)的面向?qū)ο蟪绦蛟O(shè)計方法。機房收費管理系統(tǒng)主要應(yīng)用在機房,將每位上網(wǎng)同學(xué)的學(xué)號、班級、姓名、上機起始時進(jìn)行錄入,對每位同學(xué)的上網(wǎng)費用進(jìn)行計算并按班級、學(xué)號、姓名進(jìn)行查詢。第二章課程設(shè)計任務(wù)內(nèi)容用C/C++語言實現(xiàn)一個機房收費管理系統(tǒng),該系統(tǒng)主要應(yīng)用在機房管理上,通過這個系統(tǒng)可以錄入學(xué)生信息的總數(shù),學(xué)生信息包括學(xué)生的學(xué)號、班級、姓名,還有學(xué)生上機的起始時間。在本程序中要有學(xué)生信息錄入功能,上機費用計算功能,按條件查詢功能,信息的錄入是要錄入學(xué)生的學(xué)號、班級、姓名、上機時間,上機費用按每小時1元計算,不足一小時也按一小時計算,上機費用二上機的時間*1.0/h,上機的時間為從上機時起到下機時所在電腦的當(dāng)時時間為準(zhǔn)。錄入完成后可以按學(xué)生的學(xué)號、班級、姓名來查詢學(xué)生的上機情況。第三章詳細(xì)設(shè)計說明3.1模塊3.1.1模塊描述定義一個結(jié)構(gòu)體,在其中聲明結(jié)構(gòu)變量,然后定義字符串,來存放要用到的變量。然后定義此程序的其他功能模塊的原型。主函數(shù)調(diào)用各個功能子函數(shù),定義各個功能子函數(shù),通過addition做一個學(xué)生信息錄入的函數(shù),實現(xiàn)學(xué)生學(xué)號、班級、姓名以及上機時間的錄入,通過calculate做一個計算學(xué)生上機費用的函數(shù),實現(xiàn)上機費用的計算,通過search創(chuàng)建一個查詢函數(shù),實現(xiàn)對上機學(xué)生情況的查詢。在程序中需要輸入的內(nèi)容包括:(1) 學(xué)生信息的錄入實現(xiàn)過程:根據(jù)提示選擇“1”進(jìn)入學(xué)生信息錄入界面,按界面文字提示輸入要錄入信息的學(xué)生數(shù),,按步驟輸入學(xué)生的信息,以“Enter”鍵結(jié)束,系統(tǒng)自動保存所輸入的信息。(2) 上機費用的計算實現(xiàn)過程:根據(jù)提示選擇“2”進(jìn)入計算界面,以“Enter”鍵結(jié)束,由系統(tǒng)自動計算出所有學(xué)生的上機費用。(3) 學(xué)生信息查詢實現(xiàn)過程:根據(jù)提示選擇“3”進(jìn)入信息的查詢界面,按自己的需要通過學(xué)生的學(xué)號、班級、姓名來查詢學(xué)生的信息,系統(tǒng)自動調(diào)出所查詢學(xué)生的信息,以“Enter”鍵結(jié)束,此時所有的基本信息都被要求重新輸入3.1.2功能模塊圖此系統(tǒng)的函數(shù)功能模塊圖如圖3-1所示。圖3-1函數(shù)功能模塊圖3.2性能該模塊性能要求(1) 靈活性要求輸出的數(shù)據(jù)能準(zhǔn)確的按照操作代碼輸出。(2) 時間特性要求輸入的各項操作代碼能及時反應(yīng)其運行結(jié)果。3.3函數(shù)說明3.3.1學(xué)生信息錄入函數(shù)(1) 原型:voidaddition。(2) 功能:該函數(shù)用來錄入學(xué)生信息,包括要錄入學(xué)生信息的總數(shù),錄入學(xué)生的學(xué)號、班級、姓名以及上機時間。(3) 流程圖:如圖3-2所示。
3-2學(xué)生信息錄入函數(shù)的流程圖對應(yīng)代碼voidaddition。(inti;printf(〃\n請輸入錄入學(xué)生信息的總數(shù):〃);scanf(〃%d〃,&n);for(i=1;i<=n;i++)printf(〃\n\t請輸入第%d個學(xué)生學(xué)號:〃,i);scanf(〃%s〃,student[iT].num);printf("\n\t請輸入第%d個學(xué)生班級:〃,i);scanf(〃%s〃,student[iT].theclass);printf("\n\t請輸入第%d個學(xué)生姓名:〃,i);scanf(〃%s〃,student[iT].name);printf("\n\t請輸入第%d個學(xué)生上機時間(例08:00):",i);scanf(〃%s〃,student[iT].ontime);printf("\n\t提示:您已成功錄入第%d條信息\n〃,i);}}3.3.2所有學(xué)生上機費用計算函數(shù)(1) 原型:voidcalculate。(2) 功能:該函數(shù)用來計算學(xué)生上機的費用,(3) 流程圖:如圖3-3所示。圖3-3成績查詢函數(shù)的程序流程圖對應(yīng)代碼voidcalculate。(inthours;chartimes[30];time_trawtime;structtm*timeinfo;time(&rawtime);timeinfo=localtime(&rawtime);strcpy(times,asctime(timeinfo));printf("\t所有學(xué)生上機費用如下:\n〃);for(inti=1;i<=n;i++)(printf("學(xué)生%d費用:",i);if((student[i-1].ontime[3]-48)*10+student[i-1].ontime[4]>(times[14]-48)*10+times[15])hours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1];elsehours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1]+1;printf(〃%d\n〃,hours);
3.3.3學(xué)生信息查詢函數(shù)原型:voidsearch()功能:該函數(shù)用來按照條件顯示學(xué)生上機時間。流程圖:如圖3-4所示。圖3-4成績修改函數(shù)的程序流程圖對應(yīng)代碼voidsearch()(inti,b,c,count;do(charfind[20];printf("\n請選擇查詢方式:1.根據(jù)學(xué)號查詢;2.根據(jù)班級查詢;3.根據(jù)姓名查詢:〃);scanf(〃%d〃,&b);switch(b)(case1:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf("\n請輸入學(xué)生的學(xué)號:");scanf("%s",find);for(i=0;i<n;i++)(if(strcmp(student[i].num,find)==0)(count++;if(count==PF_FLOATING_POINT_EMULATED)printf("學(xué)生學(xué)號\t學(xué)生班級\t學(xué)生姓名\t上機時間\n");printf(〃%8s%15s%15s%17s%〃,student[i].num,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf("提示:該生不存在");gotoA;case2:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf("\n請輸入學(xué)生的班級:");scanf("%s",find);for(i=0;i<n;i++)(if(strcmp(student[i].theclass,find)==0)(count++;if(count==PF_FLOATING_POINT_EMULATED)printf("學(xué)生學(xué)號\t學(xué)生班級\t學(xué)生姓名\t上機時間\n");printf(〃%8s%15s%15s%17s%〃,student[i].num,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf("提示:該生不存在");gotoA;case3:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf("\n請輸入學(xué)生的姓名:");scanf("%s",find);for(i=0;i<n;i++)(if(strcmp(student[i].name,find)==0)(count++;if(count==PF_FLOATING_POINT_EMULATED)printf("學(xué)生學(xué)號\t學(xué)生班級\t學(xué)生姓名\t上機時間\n");printf(〃%8s%15s%15s%17s%〃,student[i].num,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf("提示:該生不存在");gotoA;default:printf(〃提示:輸入錯誤");}A:printf(〃\n\t1.繼續(xù)\n\t0.返回主菜單〃);printf(〃\n\t請輸入您的選擇:〃);scanf(〃%d〃,&c);}while(c);}3.4系統(tǒng)流程圖系統(tǒng)流程圖如圖3-5所示。第四章軟件使用說明4.1軟件使用說明及出現(xiàn)的問題該程序可以實現(xiàn)對所有上機同學(xué)信息的錄入,某個同學(xué)上機情況的查詢。安裝VisualC++6.0中文版后,在工具欄“文件”中單擊“新建”選項,單擊“文件”選項卡,選擇“C++Sourcefile”。開始輸入程序,程序輸入完成,單擊工具欄中“組建”選項,選擇“編譯[機房收費管理系統(tǒng).cpp]”待程序無誤后,開始構(gòu)建并執(zhí)行程序。if(!count)printf(〃提示:該生不存在〃);gotoA;這個if語句判斷輸入的操作編號是否在目錄中,如果超出范圍重新輸入;該程序在輸入時,必須是按照要求的字符串輸入,否則程序無法運行。4.2運行結(jié)果4.2.1初始運行界面最初的運行界面,要求輸入學(xué)生信息的總數(shù)(如:輸入30),然后系統(tǒng)將列出操作目錄。如圖4-1所示。圖4-1初始運行界面4.2.2查詢界面進(jìn)入初始界面后,輸入項目編號“1”,輸入學(xué)生信息的總數(shù)(例如:輸入1)。
輸入這個學(xué)生的相關(guān)信息,輸入相關(guān)編號“3”進(jìn)行查詢。如圖4-2所示請輸入錄入學(xué)生信息的總數(shù)”請輸入第1個學(xué)生學(xué)號?青輸入第1個學(xué)生班級=0?2201-青輸A第1個學(xué)生姓名福慧舞-青輸A第1個學(xué)生上機時亦例08:00>:22:00提示:您已成功錄入新條信息歡迎遙人機房收費管理系統(tǒng),2歡迎遙人機房收費管理系統(tǒng),2■計算功能研返回請輸入您的選擇Tlit選徑查詢方式:1請輸入您的選擇Tlit選徑查詢方式:1■根據(jù)學(xué)號查詢;2?根據(jù)班紋查詢;3.根據(jù)姓名查詢:圖4-2查詢界面4.2.3計算界面計算出上機費用,具體的數(shù)據(jù)如圖4-3所示歡迎進(jìn)人機房枚蜀管理系統(tǒng)!3.善詢功俗歡迎進(jìn)人機房枚蜀管理系統(tǒng)!3.善詢功俗幻計算功能。.返回學(xué)生蠢曹蹄邙:圖4-3計算界面第五章課程設(shè)計心得與體會課程設(shè)計是培養(yǎng)學(xué)生綜合運用所學(xué)知識,發(fā)現(xiàn)、提出、分析和解決實際問題,鍛煉實踐能力的重要環(huán)節(jié),是對我們的實際工作能力的具體訓(xùn)練和考察過程。隨著科學(xué)技術(shù)發(fā)展的日新月異,當(dāng)今計算機應(yīng)用在生活中可以說是無處不在。因此,作為二十一世紀(jì)的大學(xué)來說,掌握程序開發(fā)技術(shù)是十分重要的,而C/C++語言又是最常見,功能最強大的高級語言,做好C/C++語言課程設(shè)計是十分必要的?;仡櫰鸫舜握n程設(shè)計,我感慨頗多。的確,從拿到題目到完成整個系統(tǒng)的編程,從理論到實踐,在整整三周的日子里,我學(xué)會了很多東西,在鞏固了以前所學(xué)過的知識的同時,我還學(xué)到了很多書本上所沒有的東西。此次課程設(shè)計我做的是一個機房收費管理系統(tǒng),該系統(tǒng)主要應(yīng)用在機房管理上,內(nèi)容包括上機學(xué)生信息的錄入,某個學(xué)生上機顯示的查詢,某個學(xué)生上機費用的計算。雖然是很簡單的一個小系統(tǒng),但對我們初學(xué)者來說卻是一個很大的困難,而在各種各樣的問題下,我通過自己的努力,理論結(jié)合實踐,最終完成了整個編程。在這次課程設(shè)計中,我深刻的了解到:第一,C/C++語言是程序設(shè)計的重要工具。如果想有效的進(jìn)行程序設(shè)計,正確地應(yīng)用程序設(shè)計語言表達(dá)算法,必須準(zhǔn)確的運用程序設(shè)計語言,而C/C++語言是最常見的,也是功能最強大的語言。在做好程序設(shè)計的前提下,必須掌握C/C++語言的基本語言要素和其控制結(jié)構(gòu)等語法知識,且靈活運用。第二,進(jìn)行程序設(shè)計必須有清晰的思路與方法,要合理的分配勾畫系統(tǒng)的功能模塊圖、構(gòu)建各個函數(shù)的流程圖、編寫程序以及上機實踐的時間。這次的課程設(shè)通過課堂教學(xué)、與自我實踐的緊密聯(lián)系,使得我對課程設(shè)計有了較為深的了解與認(rèn)識,更好的完成了這次學(xué)習(xí)任務(wù)。第三,做好課程設(shè)計,要有頑強的意志與堅定的信心,永不言棄。要多看、多問、多想,遇到問題要想辦法解決,否則事倍功半。在這期間,我們經(jīng)歷了很多,也收獲了很多。經(jīng)過這次課程設(shè)計,我學(xué)會了如何運用所學(xué)知識去解決實際問題,懂得了如何去與人合作!附錄一:參考文獻(xiàn)譚浩強,C++程序設(shè)計,北京清華大學(xué)出版社譚浩強,C程序設(shè)計教程(第三版),北京清華大學(xué)出版社附錄二:程序清單#include<time.h>#include<stdio.h>#include<string.h>#include<Windows.h>structstudent(charnum[20];chartheclass[20];charname[20];charontime[20];}student[30];intn;voidaddition()(inti;printf("\n請輸入錄入學(xué)生信息的總數(shù):");scanf(〃%d〃,&n);for(i=1;i<=n;i++)(printf("\n\t請輸入第%d個學(xué)生學(xué)號:〃,i);scanf("%s",student[i-1].num);printf("\n\t請輸入第%d個學(xué)生班級:〃,i);scanf("%s",student[i-1].theclass);printf("\n\t請輸入第%d個學(xué)生姓名:〃,i);scanf("%s",student[i-1].name);printf("\n\t請輸入第%d個學(xué)生上機時間(例08:00):",i);scanf("%s",student[i-1].ontime);printf("\n\t提示:您已成功錄入第%d條信息\n”,i);}}voidcalculate()(inthours;chartimes[30];time_trawtime;structtm*timeinfo;time(&rawtime);timeinfo=localtime(&rawtime);strcpy(times,asctime(timeinfo));printf("\t所有學(xué)生上機費用如下:\n");for(inti=1;i<=n;i++)(printf("學(xué)生%d費用:",i);if((student[i-1].ontime[3]-48)*10+student[i-1].ontime[4]>(times[14]-48)*10+times[15])hours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1];elsehours=(times[11]-48)*10+times[12]-(student[i-1].ontime[0]-48)*10-student[i-1].ontime[1]+1;printf("%d\n",hours);}voidsearch()(inti,b,c,count;do(charfind[20];printf("\n請選擇查詢方式:1.根據(jù)學(xué)號查詢;2.根據(jù)班級查詢;3.根據(jù)姓名查詢:〃);scanf(〃%d〃,&b);switch(b)(case1:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf("\n請輸入學(xué)生的學(xué)號:");scanf("%s",find);for(i=0;i<n;i++)(if(strcmp(student[i].num,find)==0)(count++;if(count==PF_FLOATING_POINT_EMULATED)printf("學(xué)生學(xué)號\t學(xué)生班級\t學(xué)生姓名\t上機時間\n");printf(〃%8s%15s%15s%17s%〃,student[i].num,student[i].theclass,student[i].name,student[i].ontime);}}if(!count)printf("提示:該生不存在");gotoA;case2:count=PF_FLOATING_POINT_PRECISION_ERRATA;printf("\n請輸入學(xué)生的班級:");scanf("%s",find);for(i=0;i<n;i++)(if(strcmp(student[i].theclass,find)==0)(count++;if(count==PF_FLOATING
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 朋友圈運營管理制度
- 運營整改管理制度
- 醫(yī)藥產(chǎn)業(yè)園運營制度匯編
- 企業(yè)車輛運營制度
- 西安公交運營制度
- 琴行機構(gòu)運營管理制度
- 駕校場地運營管理制度
- 完善污水廠運營管理制度
- 運營分析調(diào)度會制度
- 運營管理辦公室工作制度
- 四年級上冊數(shù)學(xué)脫式計算大全500題及答案
- 河北審圖合同協(xié)議
- 溴化鋰機組回收合同(2篇)
- 菏澤某中學(xué)歷年自主招生試題
- 醫(yī)院非產(chǎn)科孕情管理和三病檢測工作流程
- 中小學(xué)的德育工作指南課件
- GB/T 3487-2024乘用車輪輞規(guī)格系列
- 物業(yè)保潔保安培訓(xùn)課件
- 人教版初中英語七至九年級單詞匯總表(七年級至九年級全5冊)
- cnc加工中心點檢表
- 計劃決策評審-匯報模板課件
評論
0/150
提交評論