版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、1 fAIYUAN UNIVERSITY OF SCIENCE AND TECHNOLOGY計(jì)算機(jī)科學(xué)與技術(shù)系信息管理與信息系統(tǒng)專業(yè)程序設(shè)計(jì)綜合課程設(shè)計(jì)報(bào)告(2013/2014學(xué)年第一學(xué)期)學(xué)生姓名: 學(xué)生班級(jí): 學(xué)生學(xué)號(hào): 指導(dǎo)教師:2013年 1 月 8 日火車票管理系統(tǒng)第一章 課程設(shè)計(jì)的目的和要求高級(jí)語(yǔ)言課程設(shè)計(jì)的主要目的是培養(yǎng)學(xué)生能夠提高綜合應(yīng)用語(yǔ)言的能力,通 過課程設(shè)計(jì)的訓(xùn)練,使學(xué)生能及時(shí)鞏固已學(xué)的知識(shí),補(bǔ)充未學(xué)的但有必要的內(nèi)容 , 掌握應(yīng)用計(jì)算機(jī)解決實(shí)際問題的基本方法, 熟悉程序開發(fā)的全過程, 提高綜合應(yīng)用 語(yǔ)言的能力。高級(jí)語(yǔ)言程序設(shè)計(jì)的主要任務(wù)是要求學(xué)生遵循軟件開發(fā)過程的基本 規(guī)
2、范,運(yùn)用結(jié)構(gòu)程序設(shè)計(jì)的方法按照課程設(shè)計(jì)的題目要求, 分析, 編寫,調(diào)試和測(cè) 試高級(jí)語(yǔ)言程序及編寫設(shè)計(jì)報(bào)告。1.1 課程設(shè)計(jì)的目的1. 鞏固和掌握高級(jí)語(yǔ)言程序設(shè)計(jì)基本概念;2. 掌握基本的程序設(shè)計(jì)方法;3. 掌握開發(fā)軟件所需的需求定義能力;4. 提高書寫程序設(shè)計(jì)說(shuō)明文檔的能力;5. 提高綜合運(yùn)用高級(jí)語(yǔ)言的能力,強(qiáng)化編程和調(diào)試能力。1.2 課程設(shè)計(jì)的基本要求1. 根據(jù)所給的課程設(shè)計(jì)題目,分析課程設(shè)計(jì)題目的要求;2. 對(duì)系統(tǒng)功能模塊進(jìn)行分析,寫出詳細(xì)的設(shè)計(jì)說(shuō)明文檔;3. 編寫程序代碼,調(diào)試所編寫程序使其能正確運(yùn)行;4. 設(shè)計(jì)完成的軟件便于操作和使用;5. 設(shè)計(jì)完成后提交課程設(shè)計(jì)報(bào)告。第二章 課程設(shè)計(jì)
3、任務(wù)內(nèi)容2.1簡(jiǎn)介火車票管理系統(tǒng):是為廣大群眾開發(fā)的,幫助人們查詢車次信息,訂票和退票, 大大節(jié)約了人們的時(shí)間,是鐵路營(yíng)運(yùn)公司所需要的全部功能的一個(gè)綜合的管理系統(tǒng)。2.2功能說(shuō)明(1) 錄入班次信息:信息用文件保存,可不定時(shí)地增加班次數(shù)據(jù)。(2) 瀏覽班次信息:可顯示出所有班次當(dāng)前狀總 (如果當(dāng)前系統(tǒng)時(shí)間超過了某班 次的發(fā)車時(shí)間,則顯示“此班已發(fā)出”的提示信息)。(3) 查詢路線:可按班次號(hào)查詢,可按終點(diǎn)站查詢。(4) 售票和退票功能:A:當(dāng)查詢出已定票人數(shù)小于額定載量且當(dāng)前系統(tǒng)時(shí)間小于發(fā)車時(shí)間時(shí)才能售 票,自動(dòng)更新已售票人數(shù)。B:退票時(shí),輸入退票的班次,當(dāng)本班車未發(fā)出時(shí)才能退票,自動(dòng)更新已售
4、 票人數(shù)。(5) 刪除功能:該功能可以刪除錄入的錯(cuò)誤信息。(6) 訂購(gòu)功能:該功能可以方便旅客提前預(yù)定。3.1模板設(shè)計(jì)圖第三章詳細(xì)設(shè)計(jì)說(shuō)明3.2主函數(shù)流程圖查詢行車路線瀏覽班次信息錄入班次信息3.3子函數(shù)流程圖是否存在是否存在錄入班次成功結(jié)束圖3-3錄入班次流程圖是第四章編碼與調(diào)試4.1軟件使用說(shuō)明打開軟件后,會(huì)出現(xiàn)一個(gè)主頁(yè)面,這時(shí)候你首先要把火車票信息調(diào)用出來(lái), 這款軟件具備很多功能,例如用鍵盤操作頁(yè)面;可以更改班次信息;瀏覽班次信 息;訂票;退票等等,并且能夠隨時(shí)退出系統(tǒng)得功能。這款軟件簡(jiǎn)單易操作,希望大家會(huì)喜歡。4.2運(yùn)行結(jié)果及截圖1、進(jìn)入系統(tǒng)頁(yè)面錄入班次信息"D :K1 i
5、c rcsofr 孔 a Ctuid ; n 亡 d f rr c nrj £ Deg 2Bi nDeb Lql &xe ”車票背理系統(tǒng)日期:2«11/1/3/22:57錄人班吹荷且2,測(cè)覽班坎荷見 長(zhǎng)詢訐牟斑線售票寫退票索軌5.退出段系統(tǒng)諾進(jìn)攔你所需要扌功購(gòu):1 謂輸入立件名或者文件路輕名;£:班坎總車時(shí)何起點(diǎn)1 3;43衣掙2 Gt36衣索3 1510太原耳15:55衣療51H:2S衣療G23:1木療711 ;*+6太療亠.-一一點(diǎn)州r津京都州門終卻石天北成廣履行車時(shí)間(小時(shí))獺乍読爭(zhēng)11.9 嶼E.Q4613 3BQ12.9 80&.Q902
6、3.9 勵(lì)?.e列L宇票人數(shù)3S4S54?6E09850按任京糞呵主菜牟圖4-1錄入班次信息圖2、瀏覽錄入班次信息舄?jiǎng)」P亦慣要的切誌:2 班次 坦車旺何1 9:432 &:3G3 1E:1Q嗎15:555Ht;?9EZ3: >11T11:匾按任意懈回主慕單莊點(diǎn)打家序京都州門 變鄭石天北磁廣廈忙車時(shí)I機(jī)小時(shí))1 13 e12. £.9 2? e7.0己定畀人數(shù)30Jt車己發(fā)出H0此車己發(fā)出5173M此年己篋出9050此車已發(fā)出圖4-2瀏覽班次信息圖3、查詢你乘車需要的信息(i)按班次查詢企詢子菜學(xué)S®賁主按按逅謫奚擇作所齋雯旳巧徘;1i青施入要晉詢的更籾號(hào):3址
7、次 發(fā)車時(shí)河起點(diǎn) 親點(diǎn)行車時(shí)間(小時(shí)額定我瑩已定寒人數(shù)315:13太原 天評(píng)13.0 SB5H按任意整回主菜單圖4-3班次查詢圖(2) 按終點(diǎn)站查詢請(qǐng)遙鐸【禱i爲(wèi)墓的功恕2 班次 坦李旺何1 9:432 &:3C3 1E:1Q嗎15:555m;?9EZ3 : m?11按任蠢糧回主慕單莊點(diǎn)打家序京都/'HI': 終茸石天北成廣廈仃車対何(小時(shí))誣宦載亙ems13 6GB12.39s.g9Q23.e1 QB7.06Q己定票人數(shù)30此車己發(fā)出H0此車己發(fā)出5178BQ此年己筐出9Q50此車已發(fā)出圖4-4班次查詢圖4、訂票與退票(1)訂票成功訂塞與退票萊單i.iTS2. 退稟3
8、. J10主秦單.畢請(qǐng)間 留,時(shí)0 的兀氏牟:1 希要票 你入訂 茅<的歡 進(jìn)請(qǐng)保班3用終天刪點(diǎn)原Ji¥點(diǎn)津廳車時(shí)閭(I睛)舉定載雖13.9 GO圖4-5訂票成功圖(2)訂票失敗1 訂瞑2.逞架氛返回主菜單- 選樣你需要的功能門請(qǐng)輸入要訂購(gòu)聞手宗E勺氓腹煜對(duì)不起”今天的這趟車已農(nóng)出請(qǐng)明天再未,謝謝合作'旣冊(cè)發(fā)車時(shí)間起戌 終點(diǎn)行車時(shí)何(小時(shí))額定捷蛋己定喫人戳2E:30丸原 石家莊G.B 斗日HQ圖4-6訂票失敗圖(3) 退票成功奈Mm 訂型返 12 3念擇懷譎畏的E能圧堵輸入喪退吃的棄察的址醫(yī)心遲訂車幕成功,謝謝使用*班次 廢車時(shí)間起點(diǎn) 終點(diǎn)行車時(shí)間(小時(shí))額定載量己定
9、寂人數(shù)315J0丸原 天津13 6 G9訓(xùn)圖4-7退票成功圖(4) 退票失敗訂票與退票菜卑遺請(qǐng)對(duì)冊(cè)斗無(wú)點(diǎn)原 M出起太 坎發(fā) 琳.己 的車 :2票摘 能車讀間 肪的的時(shí)5 的買車舟 募幄今發(fā)15 希要' fr入起 擇<不次朋點(diǎn)京 Eku 匕 4fft勢(shì) n廳豐時(shí)問I丿卜盯12.9圖4-8退票失敗圖5、退出系統(tǒng)請(qǐng)進(jìn)擇你閉孟宴的功砲汚卜卄嶽輕務(wù)冥舅援餐崟峯也AE養(yǎng)搖沖毎擇詞謝|使幷才:殺紜欣迎下 欣目半續(xù)彳吏用養(yǎng)抵鼻舅興揮祁擰冥沖峯養(yǎng)峯謝AC哭揮沖興 Press any key to cm tin”.圖 4-9 退出系統(tǒng)圖第五章課程設(shè)計(jì)心得與體會(huì)三周的課程設(shè)計(jì)結(jié)束了,我終于完成了這次高
10、級(jí)語(yǔ)言課程設(shè)計(jì),并且認(rèn)真完 成了課程設(shè)計(jì)報(bào)告。在這次的課程設(shè)計(jì)中不僅檢驗(yàn)了我所學(xué)習(xí)的知識(shí),也培養(yǎng)了 自己的耐心。課程設(shè)計(jì)是我們專業(yè)課程知識(shí)綜合應(yīng)用的實(shí)踐訓(xùn)練,也是我們邁向 社會(huì),從事職業(yè)工作前一個(gè)必不少的過程.”千里之行始于足下”,通過這次課程 設(shè)計(jì),我深深體會(huì)到這句千古名言的真正含義.通過這次課程設(shè)計(jì),本人在多方面都有所提高。通過這次火車票系統(tǒng)設(shè)計(jì), 綜合運(yùn)用本專業(yè)所學(xué)課程的理論, 鞏固與擴(kuò)充了高級(jí)語(yǔ)言設(shè)計(jì)等課程所學(xué)的內(nèi)容, 掌握高級(jí)語(yǔ)言設(shè)計(jì)的方法和步驟,掌握了高級(jí)語(yǔ)言設(shè)計(jì)的基本的概念,了解了高 級(jí)語(yǔ)言的基本結(jié)構(gòu),提高了編程能力,繪圖能力,熟悉了規(guī)范和標(biāo)準(zhǔn),同時(shí)各科 相關(guān)的課程都有了全面的復(fù)
11、習(xí),獨(dú)立思考的能力也有了提高。在這次設(shè)計(jì)過程中,大大激發(fā)了我編程的興趣,在設(shè)計(jì)的過程中亦遇到了許 多困難,我會(huì)向同學(xué)和學(xué)長(zhǎng)尋求幫助,在交流中共同進(jìn)步,也體現(xiàn)出自己設(shè)計(jì)程 序的能力以及綜合運(yùn)用知識(shí)的能力,體會(huì)了學(xué)以致用、突出自己勞動(dòng)成果的喜悅 心情,從中發(fā)現(xiàn)自己平時(shí)學(xué)習(xí)的不足和薄弱環(huán)節(jié),從而加以彌補(bǔ)。附錄一 參考文獻(xiàn)1 張海藩編著軟件工程導(dǎo)論(第四版)M.清華大學(xué)出版社.2006.5.2 Roger S.Pressman. 軟件工程 實(shí)踐者的研究方法 . 機(jī)械工業(yè)出版社 .19903 張敬等編著 . 軟件工程教程 . 北京航空航天大學(xué)出版社 .2003.7.4 Steve maguire. Wr
12、iting Clean Code (姜靜波等譯).電子工業(yè)出版社.1993譚浩強(qiáng)著.vvC+程序設(shè)計(jì) >>.清華大學(xué)出版社 嚴(yán)蔚敏.吳偉民編著.<< 數(shù)據(jù)結(jié)構(gòu)(C語(yǔ)言版)>>.清華大學(xué)出版社附錄二 程序清單以下是火車票管理系統(tǒng)的完整程序清單: #include<stdio.h> #include<stdlib.h> #include<dos.h> #include<time.h> #include<conio.h> #include<string.h> const int MAX=20;
13、const int N=50; const int MAX; enum FALSE,TRUE; struct time int hour; int minutes; struct ticket int SerialNumber; struct time SetOut; char DeparturePointMAX; char TerminalPointMAX; float LastTime; int FixNumber; int FixedNumber;carN;int RecordNumber; int FLAG=FALSE;int ShowMessage(void); /載入原始數(shù)據(jù)voi
14、d SaveRecord(ticket x); /void mainmenu(void); / 主菜單void InsertMessage(void); /錄入班次信息void SearchMenu(void); / 查詢路線子菜單void SearchByNumber(void); /按班次號(hào)查詢void SearchByAddress(void); /按終點(diǎn)站查詢void TicketManagement(void); /車票售出與退回void TicketOrder(void); /售票void TicketDelete(void); /退票void exit(void); / 退出該系
15、統(tǒng)儲(chǔ)存信息到文件中int main(void)domainmenu();while(FLAG=FALSE);return 0;void mainmenu(void)system("color 1f");system("mode con: cols=140 lines=130");char functionNumber;printf(" 車票管理系統(tǒng) nn");printf("日期 :2011/1/3/22:57n");printf("=n");printf("1.錄入班次信息 tn&q
16、uot;);printf("2.瀏覽班次信息 tn");printf("3.查詢行車路線 tn");printf("4.售票與退票系統(tǒng) tn");printf("5.退出該系統(tǒng) tn");printf("=n");printf(" 請(qǐng)選擇你所需要的功能 :"); scanf("%c",&functionNumber); switch(functionNumber)case '1':InsertMessage();printf(&qu
17、ot;n 按任意鍵回主菜單 n");getchar();getchar();break;case '2':RecordNumber=ShowMessage();printf("n 按任意鍵回主菜單 n");getchar();getchar();break;case '3':SearchMenu();printf("n 按任意鍵回主菜單 n");getchar();getchar();break;case '4':TicketManagement();getchar();getchar();bre
18、ak;case '5':FLAG=TRUE;exit();break;default:printf("輸入錯(cuò)誤 , 請(qǐng)確保你的輸入為 1-5.n");printf(" 按任意鍵回主菜單 n");getchar();getchar();/switch endsFLAG=FALSE;void InsertMessage(void)FILE *fp;char MAX;int i;printf(" 請(qǐng)輸入文件名或者文件路徑名 :");scanf("%s",);if(fp=fopen(,"r&quo
19、t;)=NULL)printf("文件s不可讀,請(qǐng)確認(rèn)文件曲在或者文件路徑正確.nn",);mainmenu();for(i=RecordNumber;!feof(fp)&&!ferror(fp);i+)fscanf(fp,"%d%d%d",&cari.SerialNumber,&cari.SetOut.hour,&cari.SetOut.minutes);fscanf(fp,"%s%s%f%d%d",&cari.DeparturePoint,&cari.TerminalPoin
20、t,&cari.LastTime,&cari.FixNumber,&cari.FixedNumber);SaveRecord(*(car+i);RecordNumber=i;/* 輸出更新后的訂票記錄*/printf("班次t發(fā)車時(shí)間t起點(diǎn)t終點(diǎn)t行車時(shí)間(小時(shí))t額定載量t已定票人數(shù) n");for(i=0;i<RecordNumber;i+)printf("%dt%d:%dtt",cari.SerialNumber,cari.SetOut.hour,cari.SetOut.minutes);printf("%s
21、t%stt%.1ft %dtt%dn",cari.DeparturePoint,cari.TerminalPoint,cari.LastTime,cari.FixNumber,cari.FixedNumber);fclose(fp);int ShowMessage(void)int i;FILE *fp;if(fp=fopen("add.txt","r")=NULL)printf(" 讀取數(shù)據(jù)失敗 , 請(qǐng)檢查文件 add.txt 是否存在 .n");exit(-1); for(i=RecordNumber;!feof(fp)
22、&&!ferror(fp);i+) fscanf(fp,"%d%d%d",&cari.SerialNumber,&cari.SetOut.hour,&cari.Se tOut.minutes);fscanf(fp,"%s%s%f%d%d",&cari.DeparturePoint,&cari.TerminalPoint,&c ari.LastTime,&cari.FixNumber,&cari.FixedNumber);int count=i;printf("班次t
23、發(fā)車時(shí)間t起點(diǎn)t終點(diǎn)t行車時(shí)間(小時(shí))t額定載量t已定票人數(shù) n");for(i=0;i<count;i+) printf("%dt%d:%dtt",cari.SerialNumber,cari.SetOut.hour,cari. SetOut.minutes);printf("%st%stt%.1ft %dtt%dt",cari.DeparturePoint,cari.Term inalPoint,cari.LastTime,cari.FixNumber,cari.FixedNumber);/* 調(diào)用系統(tǒng)時(shí)間實(shí)現(xiàn)的功能 :如果車已發(fā)出,
24、則打出提示"此車已發(fā)出", 但是此 處有錯(cuò)誤 */time_t tval;struct tm *now;tval = time(NULL);now = localtime(&tval);if(now->tm_hour=cari.SetOut.hour&&now->tm_min>cari.SetOut.minute s)|(now->tm_hour>cari.SetOut.hour)printf(" 此車已發(fā)出 ");printf("n");return count;void Sea
25、rchMenu(void)system("color 1f");system("mode con: cols=140 lines=130");char functionNumber;printf(" 查詢子菜單 n");printf("=n");printf("1.按班次號(hào)查詢 tn");printf("2.按終點(diǎn)站查詢 tn");printf("3.返回主菜單 tn");printf("=n");printf(" 請(qǐng)選擇你所
26、需要的功能 :"); scanf("%*c%c",&functionNumber); switch(functionNumber)case '1':SearchByNumber();break;case '2':SearchByAddress();break;case '3':getchar();mainmenu();break;default:printf(" 輸入錯(cuò)誤 , 請(qǐng)確保你的輸入為 1-3.n");printf(" 按任意鍵回查詢子菜單 n");getcha
27、r();getchar();SearchMenu();void SearchByNumber(void)int SearchNumber;printf(" 請(qǐng)輸入要查詢的班次號(hào) :");scanf("%d",&SearchNumber);printf(" 班次t發(fā)車時(shí)間t起點(diǎn)t終點(diǎn)t行車時(shí)間(小時(shí))t額定載量t已定票 人數(shù) n");printf("%dt%d:%dtt",carSearchNumber-1.SerialNumber,carSearchNumb er-1.SetOut.hour,carSearchNumber-1.SetOut.minutes);printf("%st%stt%.1ft %dtt%dn",carSearchNumber-1.DeparturePoint,carSearchNumber-1.TerminalPoint,carSearchNumber-1.LastTime,carS earchNumber-1.FixNumber,carSearchNumber-1.FixedNumber);void SearchByAddress(void)int i;char AddressMAX
溫馨提示
- 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ù)覽,若沒有圖紙預(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 運(yùn)動(dòng)會(huì)八字口號(hào)
- 老師對(duì)學(xué)生的評(píng)語(yǔ)(合集4篇)001
- 兒童繪畫大賽贊助合同(2篇)
- 2025年碳化硅超細(xì)粉體項(xiàng)目合作計(jì)劃書
- 2025年工業(yè)自動(dòng)化儀表項(xiàng)目建議書
- 大車租賃合同范本
- 便利店店面租賃合同范本
- 工廠廠房租賃合同樣板
- 寫字樓租賃合同模板
- 八年級(jí)物理上冊(cè)第六章質(zhì)量與密度第1節(jié)質(zhì)量教案新版新人教版
- 住宿服務(wù)投標(biāo)方案(技術(shù)方案)
- 遼寧省沈陽(yáng)市2022-2023學(xué)年六年級(jí)上學(xué)期語(yǔ)文期末試卷(含答案)
- 23J916-1:住宅排氣道(一)
- 四年級(jí)全冊(cè)《勞動(dòng)》課程知識(shí)點(diǎn)匯總精排
- 儲(chǔ)能項(xiàng)目用戶側(cè)投資測(cè)算表
- 脊柱四肢及肛門直腸檢查
- 高中政治期末綜合檢測(cè)部編版選修1
- 小學(xué)科學(xué)五年級(jí)上冊(cè)期末測(cè)試質(zhì)量分析
- 電子科技公司安全生產(chǎn)管理制度
- 收款單位變更委托書
- 歷史(中職)PPT全套教學(xué)課件
評(píng)論
0/150
提交評(píng)論