




已閱讀5頁(yè),還剩24頁(yè)未讀, 繼續(xù)免費(fèi)閱讀
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
計(jì)算機(jī)科學(xué)與技術(shù)系信息管理與信息系統(tǒng)專(zhuān)業(yè)程序設(shè)計(jì)綜合課程設(shè)計(jì)報(bào)告 (2013/2014學(xué)年 第一學(xué)期)學(xué)生姓名: 學(xué)生班級(jí): 學(xué)生學(xué)號(hào): 指導(dǎo)教師: 2013年1月8日目 錄第一章 課程設(shè)計(jì)的目的和要求11.1課程設(shè)計(jì)的目的11.2 課程設(shè)計(jì)的基本要求1第二章 課程設(shè)計(jì)任務(wù)內(nèi)容22.1 簡(jiǎn)介22.2 功能說(shuō)明2第三章 詳細(xì)設(shè)計(jì)說(shuō)明33.1 模板設(shè)計(jì)圖33.2 主函數(shù)流程圖43.3 子函數(shù)流程圖5第四章 編碼與調(diào)試74.1 軟件使用說(shuō)明74.2 運(yùn)行結(jié)果及截圖7第五章 課程設(shè)計(jì)心得與體會(huì)11附錄一 參考文獻(xiàn)12附錄二 程序清單13附錄三 錄入文件27I程序設(shè)計(jì)綜合課程設(shè)計(jì)火車(chē)票管理系統(tǒng)第一章 課程設(shè)計(jì)的目的和要求 高級(jí)語(yǔ)言課程設(shè)計(jì)的主要目的是培養(yǎng)學(xué)生能夠提高綜合應(yīng)用語(yǔ)言的能力,通過(guò)課程設(shè)計(jì)的訓(xùn)練,使學(xué)生能及時(shí)鞏固已學(xué)的知識(shí),補(bǔ)充未學(xué)的但有必要的內(nèi)容,掌握應(yīng)用計(jì)算機(jī)解決實(shí)際問(wèn)題的基本方法,熟悉程序開(kāi)發(fā)的全過(guò)程,提高綜合應(yīng)用語(yǔ)言的能力。高級(jí)語(yǔ)言程序設(shè)計(jì)的主要任務(wù)是要求學(xué)生遵循軟件開(kāi)發(fā)過(guò)程的基本規(guī)范,運(yùn)用結(jié)構(gòu)程序設(shè)計(jì)的方法按照課程設(shè)計(jì)的題目要求,分析,編寫(xiě),調(diào)試和測(cè)試高級(jí)語(yǔ)言程序及編寫(xiě)設(shè)計(jì)報(bào)告。1.1課程設(shè)計(jì)的目的 1.鞏固和掌握高級(jí)語(yǔ)言程序設(shè)計(jì)基本概念; 2.掌握基本的程序設(shè)計(jì)方法; 3.掌握開(kāi)發(fā)軟件所需的需求定義能力; 4.提高書(shū)寫(xiě)程序設(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)行分析,寫(xiě)出詳細(xì)的設(shè)計(jì)說(shuō)明文檔; 3.編寫(xiě)程序代碼,調(diào)試所編寫(xiě)程序使其能正確運(yùn)行; 4.設(shè)計(jì)完成的軟件便于操作和使用; 5.設(shè)計(jì)完成后提交課程設(shè)計(jì)報(bào)告。 第二章 課程設(shè)計(jì)任務(wù)內(nèi)容 2.1 簡(jiǎn)介 火車(chē)票管理系統(tǒng):是為廣大群眾開(kāi)發(fā)的,幫助人們查詢(xún)車(chē)次信息,訂票和退票,大大節(jié)約了人們的時(shí)間,是鐵路營(yíng)運(yùn)公司所需要的全部功能的一個(gè)綜合的管理系統(tǒng)。2.2 功能說(shuō)明(1)錄入班次信息:信息用文件保存,可不定時(shí)地增加班次數(shù)據(jù)。(2)瀏覽班次信息:可顯示出所有班次當(dāng)前狀總(如果當(dāng)前系統(tǒng)時(shí)間超過(guò)了某班次的發(fā)車(chē)時(shí)間,則顯示“此班已發(fā)出”的提示信息)。(3)查詢(xún)路線:可按班次號(hào)查詢(xún) ,可按終點(diǎn)站查詢(xún)。(4)售票和退票功能:A:當(dāng)查詢(xún)出已定票人數(shù)小于額定載量且當(dāng)前系統(tǒng)時(shí)間小于發(fā)車(chē)時(shí)間時(shí)才能售票,自動(dòng)更新已售票人數(shù)。B:退票時(shí),輸入退票的班次,當(dāng)本班車(chē)未發(fā)出時(shí)才能退票,自動(dòng)更新已售票人數(shù)。(5)刪除功能:該功能可以刪除錄入的錯(cuò)誤信息。(6)訂購(gòu)功能:該功能可以方便旅客提前預(yù)定。第三章 詳細(xì)設(shè)計(jì)說(shuō)明3.1 模板設(shè)計(jì)圖 火車(chē)票管理系統(tǒng) 錄入班次信息 瀏覽班次信息 查看行車(chē)路線 選擇訂票或退票圖3-1函數(shù)功能模板圖3.2 主函數(shù)流程圖開(kāi)始 顯示一系列功能操作輸入所要操作的編號(hào) 根據(jù)所需操作選擇,調(diào)用各功能函數(shù)模塊 1 2 3 4 錄入班次信息瀏覽班次信息售票或退票查詢(xún)行車(chē)路線顯示結(jié)果 繼續(xù) 是 否 結(jié)束 圖3-2主函數(shù)流程圖3.3 子函數(shù)流程圖 開(kāi)始 開(kāi)始所需查詢(xún)的車(chē)次添加班次信息是否存在是否存在 是 否 否 錄入班次成功 是 按終點(diǎn)站 1 2按班次號(hào) 結(jié)束 圖3-3 錄入班次流程圖輸出所需信息 結(jié)束 圖3-4 查詢(xún)車(chē)次函數(shù)流程圖 開(kāi)始所需訂票的車(chē)次是否存在 否 是 1 2按終點(diǎn)站按班次號(hào)是否發(fā)車(chē) 是 否 訂票成功請(qǐng)您及時(shí)上車(chē)車(chē)已發(fā)出請(qǐng)您明天再來(lái) 結(jié)束 圖3-5 訂票函數(shù)流程圖 第四章 編碼與調(diào)試4.1 軟件使用說(shuō)明打開(kāi)軟件后,會(huì)出現(xiàn)一個(gè)主頁(yè)面,這時(shí)候你首先要把火車(chē)票信息調(diào)用出來(lái),這款軟件具備很多功能,例如用鍵盤(pán)操作頁(yè)面;可以更改班次信息;瀏覽班次信息;訂票;退票等等,并且能夠隨時(shí)退出系統(tǒng)得功能。這款軟件簡(jiǎn)單易操作,希望大家會(huì)喜歡。4.2 運(yùn)行結(jié)果及截圖1、 進(jìn)入系統(tǒng)頁(yè)面錄入班次信息 圖4-1 錄入班次信息圖2、瀏覽錄入班次信息 圖4-2 瀏覽班次信息圖3、 查詢(xún)你乘車(chē)需要的信息(1) 按班次查詢(xún) 圖4-3 班次查詢(xún)圖(2) 按終點(diǎn)站查詢(xún) 圖4-4 班次查詢(xún)圖 4、 訂票與退票(1) 訂票成功 圖4-5 訂票成功圖(2) 訂票失敗 圖4-6 訂票失敗圖(3) 退票成功 圖4-7 退票成功圖 (4) 退票失敗 圖4-8 退票失敗圖5、 退出系統(tǒng) 圖4-9 退出系統(tǒng)圖 第五章 課程設(shè)計(jì)心得與體會(huì)三周的課程設(shè)計(jì)結(jié)束了,我終于完成了這次高級(jí)語(yǔ)言課程設(shè)計(jì),并且認(rèn)真完成了課程設(shè)計(jì)報(bào)告。在這次的課程設(shè)計(jì)中不僅檢驗(yàn)了我所學(xué)習(xí)的知識(shí),也培養(yǎng)了自己的耐心。課程設(shè)計(jì)是我們專(zhuān)業(yè)課程知識(shí)綜合應(yīng)用的實(shí)踐訓(xùn)練,也是我們邁向社會(huì),從事職業(yè)工作前一個(gè)必不少的過(guò)程”千里之行始于足下”,通過(guò)這次課程設(shè)計(jì),我深深體會(huì)到這句千古名言的真正含義通過(guò)這次課程設(shè)計(jì),本人在多方面都有所提高。通過(guò)這次火車(chē)票系統(tǒng)設(shè)計(jì),綜合運(yùn)用本專(zhuā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ù)習(xí),獨(dú)立思考的能力也有了提高。 在這次設(shè)計(jì)過(guò)程中,大大激發(fā)了我編程的興趣,在設(shè)計(jì)的過(guò)程中亦遇到了許多困難,我會(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è)出版社.1990 3 張敬等編著.軟件工程教程.北京航空航天大學(xué)出版社.2003.7. 4 Steve maguire. Writing Clean Code(姜靜波等譯).電子工業(yè)出版社.1993 5譚浩強(qiáng)著.清華大學(xué)出版社 6嚴(yán)蔚敏.吳偉民編著.清華大學(xué)出版社 附錄二 程序清單以下是火車(chē)票管理系統(tǒng)的完整程序清單:#include#include#include#include#include#includeconst int MAX=20;const int N=50;const int MAXFILENAME=100;enum FALSE,TRUE;struct timeint hour;int minutes;struct ticketint 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ù)void mainmenu(void); /主菜單void InsertMessage(void); /錄入班次信息void SearchMenu(void); /查詢(xún)路線子菜單void SearchByNumber(void); /按班次號(hào)查詢(xún)void SearchByAddress(void); /按終點(diǎn)站查詢(xún)void TicketManagement(void); /車(chē)票售出與退回void TicketOrder(void); /售票void TicketDelete(void); /退票void exit(void); /退出該系統(tǒng)void SaveRecord(ticket x); /儲(chǔ)存信息到文件中/*/int main(void)do mainmenu();while(FLAG=FALSE);return 0;void mainmenu(void)system(color 1f);system(mode con: cols=140 lines=130);char functionNumber;printf( 車(chē)票管理系統(tǒng)nn);printf( 日期:2011/1/3/22:57n);printf(=n);printf( 1.錄入班次信息tn);printf( 2.瀏覽班次信息tn);printf( 3.查詢(xún)行車(chē)路線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(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(); break; 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 filenameMAXFILENAME;int i;printf(請(qǐng)輸入文件名或者文件路徑名:);scanf(%s,filename);if(fp=fopen(filename,r)=NULL) printf(文件%s不可讀,請(qǐng)確認(rèn)文件%s存在或者文件路徑正確.nn,filename,filename); 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.TerminalPoint,&cari.LastTime,&cari.FixNumber,&cari.FixedNumber); SaveRecord(*(car+i);RecordNumber=i;/*輸出更新后的訂票記錄*/printf(班次t發(fā)車(chē)時(shí)間t起點(diǎn)t終點(diǎn)t行車(chē)時(shí)間(小時(shí))t額定載量t已定票人數(shù)n);for(i=0;iRecordNumber;i+)printf(%dt%d:%dtt,cari.SerialNumber,cari.SetOut.hour,cari.SetOut.minutes); printf(%st%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)&!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.TerminalPoint,&cari.LastTime,&cari.FixNumber,&cari.FixedNumber);int count=i;printf(班次t發(fā)車(chē)時(shí)間t起點(diǎn)t終點(diǎn)t 行車(chē)時(shí)間(小時(shí))t額定載量t已定票人數(shù)n);for(i=0;itm_hour=cari.SetOut.hour&now-tm_mincari.SetOut.minutes)|(now-tm_hourcari.SetOut.hour) printf(此車(chē)已發(fā)出); printf(n);return count;void SearchMenu(void)system(color 1f);system(mode con: cols=140 lines=130);char functionNumber;printf( 查詢(xún)子菜單n);printf(=n);printf( 1.按班次號(hào)查詢(xún)tn);printf( 2.按終點(diǎn)站查詢(xún)tn);printf( 3.返回主菜單tn);printf(=n);printf(請(qǐng)選擇你所需要的功能:);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(按任意鍵回查詢(xún)子菜單.n); getchar(); getchar(); SearchMenu();void SearchByNumber(void)int SearchNumber;printf(請(qǐng)輸入要查詢(xún)的班次號(hào):);scanf(%d,&SearchNumber);printf(班次t發(fā)車(chē)時(shí)間t起點(diǎn)t終點(diǎn)t行車(chē)時(shí)間(小時(shí))t額定載量t已定票人數(shù)n);printf(%dt%d:%dtt,carSearchNumber-1.SerialNumber,carSearchNumber-1.SetOut.hour,carSearchNumber-1.SetOut.minutes);printf(%st%stt%.1ft %dtt%dn,carSearchNumber-1.DeparturePoint,carSearchNumber-1.TerminalPoint,carSearchNumber-1.LastTime,carSearchNumber-1.FixNumber,carSearchNumber-1.FixedNumber);void SearchByAddress(void)int i;char AddressMAX;printf(請(qǐng)輸入終點(diǎn)站的名稱(chēng):);scanf(%s,&Address);printf(班次t發(fā)車(chē)時(shí)間t起點(diǎn)t終點(diǎn)t行車(chē)時(shí)間(小時(shí))t額定載量t已定票人數(shù)n);for(i=0;iRecordNumber;i+) /對(duì)比終點(diǎn)站記錄,找到并輸出 if(strcmp(Address,cari.TerminalPoint)=0) printf(%dt%d:%dtt,cari.SerialNumber,cari.SetOut.hour,cari.SetOut.minutes); printf(%st%stt%.1ft %dtt%dn,cari.DeparturePoint,cari.TerminalPoint,cari.LastTime,cari.FixNumber,cari.FixedNumber); void TicketManagement(void)char functionNumber;system(color 1f);system(mode con: cols=140 lines=130);printf( 訂票與退票菜單n);printf(=n);printf( 1.訂票tn);printf( 2.退票tn);printf( 3.返回主菜單.n);printf(=n);printf(選擇你需要的功能:);scanf(%*c%c,&functionNumber);switch(functionNumber) case 1: TicketOrder(); /getchar(); /getchar(); break; case 2:TicketDelete();break; case 3: getchar(); mainmenu(); break; default: printf(輸入錯(cuò)誤,請(qǐng)確保你的輸入為1-3.n); printf(按任意鍵回主菜單.n); getchar(); getchar(); mainmenu(); void TicketOrder(void)int i;printf(請(qǐng)輸入要訂購(gòu)的車(chē)票的班次:);scanf(%d,&i);if(iRecordNumber) printf(對(duì)不起,今天沒(méi)有這趟車(chē),請(qǐng)明天再來(lái),謝謝使用!n); printf(按任意鍵回主菜單.n); getchar();/getchar(); TicketManagement();time_t tval; struct tm *now; tval = time(NULL); now = localtime(&tval);if(now-tm_hour=cari.SetOut.hour&now-tm_mintm_hourcari.SetOut.hour) if(cari.FixedNumbercari.FixNumber) (cari.FixedNumber)+; printf(你的訂票成功,請(qǐng)按時(shí)上車(chē),謝謝使用!n); else printf(對(duì)不起,今天的這趟車(chē)的票已賣(mài)完,請(qǐng)明天再來(lái),謝謝合作!n); else printf(對(duì)不起,今天的這趟車(chē)已發(fā)出,請(qǐng)明天再來(lái),謝謝合作!n);printf(班次t發(fā)車(chē)時(shí)間t起點(diǎn)t終點(diǎn)t行車(chē)時(shí)間(小時(shí))t額定載量t已定票人數(shù)n);printf(%dt%d:%dtt,cari-1.SerialNumber,cari-1.SetOut.hour,cari-1.SetOut.minutes);printf(%st%stt%.1ft %dtt%dn,cari-1.DeparturePoint,cari-1.TerminalPoint,cari-1.LastTime,cari-1.FixNumber,cari-1.FixedNumber);/printf(按任意鍵回主菜單.n);/getchar();getchar();void TicketDelete(void)int i;printf(請(qǐng)輸入要退購(gòu)的車(chē)票的班次:);scanf(%d,&i);if(iRecordNumber) printf(對(duì)不起,今天沒(méi)有這趟車(chē),無(wú)法完成退票.謝謝使用!n); getchar();
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 豬羊養(yǎng)殖知識(shí)培訓(xùn)課件
- 2025重慶涪陵“才聚涪州·引雁回巢”引才專(zhuān)項(xiàng)招聘410人(第一批)筆試參考題庫(kù)附帶答案詳解
- 2025福建福州左臺(tái)置業(yè)有限公司項(xiàng)目建設(shè)合同制人員招聘33人筆試參考題庫(kù)附帶答案詳解
- 2025浙江省安全生產(chǎn)科學(xué)研究有限公司招聘15人筆試參考題庫(kù)附帶答案詳解
- 2025建信人壽保險(xiǎn)股份有限公司濱州中心支公司招聘9人筆試參考題庫(kù)附帶答案詳解
- 角膜及眼表疾病知到智慧樹(shù)章節(jié)測(cè)試課后答案2024年秋溫州醫(yī)科大學(xué)
- 2025年河北石家莊印鈔有限公司招聘13人筆試參考題庫(kù)附帶答案詳解
- 2025年安徽三洲水利建設(shè)有限公司工作人員招聘9人筆試參考題庫(kù)附帶答案詳解
- 2025年中國(guó)人壽招聘筆試筆試參考題庫(kù)附帶答案詳解
- 2025山東省聯(lián)合農(nóng)藥工業(yè)有限公司招聘102人筆試參考題庫(kù)附帶答案詳解
- 《最好的未來(lái)》合唱曲譜
- 四年級(jí)上冊(cè)第四單元讓生活多一些綠色道德與法治教學(xué)反思11變廢為寶有妙招
- 嗓音(發(fā)聲)障礙評(píng)定與治療
- GB∕T 8081-2018 天然生膠 技術(shù)分級(jí)橡膠(TSR)規(guī)格導(dǎo)則
- 教學(xué)課件個(gè)人理財(cái)-2
- 航空航天概論(課堂PPT)
- 影視旅游作品對(duì)游客出游動(dòng)機(jī)及行為意向的影響研究
- 【圖文】煤礦井下常見(jiàn)的失爆現(xiàn)象
- 我的寒假生活模板
- 完整版三措兩案范文
- 貿(mào)易公司程序文件
評(píng)論
0/150
提交評(píng)論