版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p><b> 河南城建學(xué)院</b></p><p><b> 課程設(shè)計(jì)報(bào)告書</b></p><p> 專 業(yè):計(jì)算機(jī)科學(xué)與技術(shù) </p><p> 課程設(shè)計(jì)名稱:《數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)》</p><p> 題 目:飛機(jī)航班訂票系統(tǒng)</p>
2、<p> 班 級:xxx</p><p><b> 學(xué) 號:x</b></p><p><b> 姓 名:xx</b></p><p> 同 組 人 員:x</p><p> 指 導(dǎo) 老 師:x</p><p>
3、 完 成 時(shí) 間:2012-2-17</p><p><b> 摘要</b></p><p> 隨著時(shí)代的進(jìn)步社會(huì)分工的不斷細(xì)化,各個(gè)行業(yè)聯(lián)系的不斷密切,人們出行越來越多,出行的方式也是百花齊放,作為空中重要的交通工具,飛機(jī)航空系統(tǒng)也在不斷地得到優(yōu)化,其中重要的一項(xiàng)就是飛機(jī)航空訂票系統(tǒng),因此好的訂票系統(tǒng)關(guān)系著人們的日常出行方便與否,設(shè)計(jì)并編制出符合人們需要的
4、航空訂票系統(tǒng)是一項(xiàng)繁重而艱巨的任務(wù),需要我們認(rèn)真去完成。</p><p> 本文采用C作為前臺(tái)開發(fā)工具,VC6.0作為程序代碼的實(shí)現(xiàn),旨在實(shí)現(xiàn)對現(xiàn)有飛機(jī)訂票系統(tǒng)中遇到的各種情況進(jìn)行良好的改進(jìn),是作為嵌入式系統(tǒng)應(yīng)用于機(jī)場的良好軟件。</p><p> 關(guān)鍵詞:C,VC 6.0,飛機(jī)訂票系統(tǒng)</p><p><b> 目錄</b></p
5、><p><b> 目錄3</b></p><p> 第一章開發(fā)環(huán)境和開發(fā)工具4</p><p> 1.1C語言簡介4</p><p> 1.2 開發(fā)背景4</p><p> 1.3 開發(fā)環(huán)境4</p><p> 第二章 算法思想5</p&g
6、t;<p> 2.1 系統(tǒng)需求分析5</p><p> 2.2 系統(tǒng)總體設(shè)計(jì)5</p><p> 2.2.1 系統(tǒng)設(shè)計(jì)目標(biāo)5</p><p> 2.2.2 開發(fā)設(shè)計(jì)思想5</p><p> 2.2.3 系統(tǒng)功能模塊設(shè)計(jì)6</p><p> 2.3 算法思想描述7</p>
7、<p> 第三章算法實(shí)現(xiàn)..11</p><p> 3.1 數(shù)據(jù)結(jié)構(gòu)11</p><p> 3.2 程序模塊11</p><p> 3.3 各模塊之間的調(diào)用關(guān)系12</p><p> 3.4 源程序代碼12</p><p> 第四章測試與分析21</p><
8、p> 4.1 測試數(shù)據(jù)選擇21 </p><p> 4.2 測試結(jié)果分析22</p><p><b> 總 結(jié)22</b></p><p><b> 心得體會(huì)22</b></p><p><b> 參考文獻(xiàn)23</b></p>&l
9、t;p><b> 開發(fā)環(huán)境和開發(fā)工具</b></p><p><b> C/C++語言介紹</b></p><p><b> 開發(fā)背景</b></p><p> 隨著科學(xué)技術(shù)的不斷發(fā)展,計(jì)算機(jī)科學(xué)日漸成熟,其強(qiáng)大功能已為人們所深刻認(rèn)識(shí),它己進(jìn)入人類社會(huì)的各個(gè)領(lǐng)域并發(fā)揮著越來越重要的作用。
10、采用計(jì)算機(jī)進(jìn)行信息化管理已成為衡量各個(gè)國家科學(xué)化和現(xiàn)代化的重要標(biāo)志,而交通方式的全面自動(dòng)化、信息化則是其中重要的組成部分,在很大程度上影響著企業(yè)的經(jīng)濟(jì)效益和社會(huì)效益。因此,本文所研究的航空訂票系統(tǒng)具有一定的使用價(jià)值和現(xiàn)實(shí)意義。</p><p> 開發(fā)環(huán)境 &l
11、t;/p><p> 本文所采用的開發(fā)環(huán)境主要是基于VC6.0和基于面向?qū)ο蟪绦蛟O(shè)計(jì)的c++。VC是個(gè)平臺(tái)開工具。該軟件使用TC2為內(nèi)核,提供WINDOWS平臺(tái)的開發(fā)界面,因此也就支持WINDOWS平臺(tái)下的功能,例如剪切、復(fù)制、粘貼和查找替換等。而且在功能上也有它的獨(dú)特特色例如語法加亮、C內(nèi)嵌匯編、自定義擴(kuò)展庫的支持等。</p><p><b> 算法思想</b><
12、;/p><p> 2.1 系統(tǒng)需求分析</p><p> 隨著經(jīng)濟(jì)全球化的推進(jìn)以及企業(yè)激烈的競爭,各大機(jī)場訂票系統(tǒng)已經(jīng)越來越不能適應(yīng)人們?nèi)粘3鲂械木置?,所以我們現(xiàn)在需要一個(gè)檢索迅速、查找方便、易修改功能齊全方便的系統(tǒng)來適應(yīng)我們的需求。</p><p> 問題的提出:為了減少人工工作量,提高工作效率,使機(jī)場管理員的工作更加有效的進(jìn)行。</p><
13、p><b> 2.2系統(tǒng)總體設(shè)計(jì)</b></p><p> 2.21 系統(tǒng)設(shè)計(jì)目標(biāo)</p><p> 本文研究開發(fā)的航空訂票系統(tǒng)用于完成航空訂票工作,有以下三個(gè)方面的目標(biāo):</p><p> 支持航空管理公司更加便捷的管理</p><p> 支持航空公司高效率的滿足人們空行需求,包括與班機(jī)有關(guān)的訂票,退
14、票,查詢等功能。</p><p> 【3】支持航空公司隨時(shí)增加或者是刪除航班信息 </p><p><b> 開發(fā)設(shè)計(jì)思想</b></p><p> 基于以上系統(tǒng)設(shè)計(jì)目標(biāo),本文在開發(fā)人事管理信息系統(tǒng)時(shí)遵循了以下開發(fā)設(shè)計(jì)思想:</p>
15、;<p> ●采用現(xiàn)有的軟硬件環(huán)境及先進(jìn)的管理系統(tǒng)開發(fā)方案,從而達(dá)到充分利用現(xiàn)有資源,提高系統(tǒng)開發(fā)水平和應(yīng)用效果的目的。</p><p> ●盡量達(dá)到操作過程中的直觀、方便、實(shí)用、安全等要求。</p><p> ●系統(tǒng)采用模塊化程序設(shè)計(jì)方法,既便于系統(tǒng)功能的各種組合和修改,又便于未參與開發(fā)的技術(shù)維護(hù)人員補(bǔ)充、維護(hù)。</p><p> ●系統(tǒng)應(yīng)具
16、備數(shù)據(jù)庫維護(hù)功能,及時(shí)根據(jù)用戶需求進(jìn)行數(shù)據(jù)的添加、刪除、修改、等操作。</p><p> 2.23 系統(tǒng)功能模塊設(shè)計(jì)</p><p> 本系統(tǒng)分為六個(gè)模塊:增加航班模塊、瀏覽航班模塊、查找航班模塊、航班排序模塊、訂票模塊、退票模塊。得到如圖所示系統(tǒng)功能模塊圖。</p><p> 圖2-1 系統(tǒng)功能模塊圖</p><p> 2.3 算
17、法思想描述</p><p> 【1】系統(tǒng)啟動(dòng)時(shí)通過輸入航班信息來增加乘客的選擇范圍</p><p> 【2】當(dāng)選擇功能1時(shí),進(jìn)入增加航班模塊</p><p> 【3】當(dāng)選擇功能2時(shí),進(jìn)入瀏覽航班信息模塊</p><p> 【4】當(dāng)選擇功能3時(shí),進(jìn)入查找航班信息模塊</p><p> 【5】當(dāng)選擇功能4時(shí),進(jìn)入
18、航班排序模塊,有兩種選擇一是從航班號從大到小,二是從航班號從小到大</p><p> 【6】當(dāng)需要訂票時(shí),可以選擇功能5進(jìn)入訂票模塊,</p><p> 【7】當(dāng)有的乘客需要退票時(shí)也可以進(jìn)入退票模塊</p><p><b> 算法實(shí)現(xiàn)</b></p><p><b> 3.1 數(shù)據(jù)結(jié)構(gòu)</b>
19、;</p><p> 航空管理系統(tǒng)是一個(gè)數(shù)據(jù)庫應(yīng)用系統(tǒng),航班的所有信息都保存在數(shù)據(jù)庫中。</p><p><b> 程序模塊 </b></p><p> 為實(shí)現(xiàn)函數(shù)功能特定義一下函數(shù)模型,具體程序參考程序源代碼模塊</p><p> void add();//函數(shù)聲明增加航班信息函數(shù)</p>&
20、lt;p> void print(); //顯示航班信息</p><p> void search();//查找航班信息</p><p> void dingpiao();//訂票業(yè)務(wù)</p><p> void tuipiao();//退票</p><p> void read();//讀取文件<
21、/p><p> void save();//保存文件</p><p> void output();//輸出格式</p><p> void paixu();//航班排序</p><p> void chushihua();//系統(tǒng)初始化</p><p> void build();//建立數(shù)據(jù)
22、文件</p><p> void paixu1();//按航班號從小到大排序</p><p> void paixu2();//從大到小</p><p> 各模塊之間的調(diào)用關(guān)系</p><p> 程序從主函數(shù)開始,首先調(diào)用chushihua函數(shù)用來判斷系統(tǒng)本身是否已經(jīng)有原始數(shù)據(jù)文件,如果已經(jīng)有原始數(shù)據(jù)則調(diào)用read函數(shù)否則調(diào)用
23、build函數(shù)用來創(chuàng)建數(shù)據(jù)文件。進(jìn)入系統(tǒng)開始頁面,當(dāng)進(jìn)入增加航班信息模塊時(shí)調(diào)用add函數(shù)和save函數(shù),進(jìn)入瀏覽信息模塊后調(diào)用print函數(shù)來顯示已有數(shù)據(jù)文件,進(jìn)入查詢信息模塊調(diào)用search函數(shù),dingpiao和tuipiao函數(shù)中首先調(diào)用search函數(shù),然后在相應(yīng)的增加或者是減少飛機(jī)航票。</p><p><b> 程序源代碼</b></p><p> #
24、include<stdio.h></p><p> #include<string.h></p><p> #include<process.h></p><p> #define N 9999//定義最多的航班數(shù)</p><p> #define PRINT "%d\t
25、\t%s\t\t%s\t\t星期%s\t\t%d\n ",s[i].num,s[i].start,s[i].over,s[i].time,s[i].count //宏定義輸出格式</p><p> struct air //定義結(jié)構(gòu)體數(shù)組</p><p><b> {</b></p><p> int nu
26、m;</p><p> char start[20];</p><p> char over[20];</p><p> char time[10];</p><p> int count;</p><p><b> }s[N];</b></p>
27、<p> int i,m=0;//定義全局變量</p><p> char ii[10];</p><p> void add();//函數(shù)聲明增加航班信息函數(shù)</p><p> void print(); //顯示航班信息</p><p> void search();//查找航班信息</p
28、><p> void dingpiao();//訂票業(yè)務(wù)</p><p> void tuipiao();//退票</p><p> void read();//讀取文件</p><p> void save();//保存文件</p><p> void output();//輸出格式<
29、;/p><p> void paixu();//航班排序</p><p> void chushihua();//系統(tǒng)初始化</p><p> void build();//建立數(shù)據(jù)文件</p><p> void paixu1();//按航班號從小到大排序</p><p> void paixu2
30、();//從大到小</p><p> void main()//主函數(shù)</p><p><b> {</b></p><p><b> int j; </b></p><p> chushihua();//系統(tǒng)初始化判斷是否存在原始數(shù)據(jù)文件</p><p&g
31、t; printf(" 歡迎使用飛機(jī)訂票系統(tǒng)\n");</p><p><b> do</b></p><p><b> {</b></p><p> printf("===========================================
32、===================================== "); </p><p> printf("1.增加航班信息\n"</p><p> "\t2.瀏覽航班信息\n"</p><p> "\t\t3.查找航班信息(按航班號)\t\t╮(╯_╰)╭\n"<
33、/p><p> "\t\t\t4.航班排序(按航班號)\n"</p><p> "\t\t\t\t5.訂票業(yè)務(wù)\n" </p><p> "\to(︶︿︶)o\t\t\t6.退票業(yè)務(wù)\n"</p><p> "\t\t\t\t\t\t0.退出\n");<
34、/p><p> printf("================================================================================ "); </p><p> printf("請?jiān)?-6中選擇以回車鍵結(jié)束: ");</p><p> scanf("%d
35、",&j);</p><p> fflush(stdin);</p><p><b> switch(j)</b></p><p><b> {</b></p><p> case 1: add();</p><p><b> bre
36、ak;</b></p><p> case 2:print();</p><p><b> break;</b></p><p> case 3:search();</p><p><b> break;</b></p><p> case 4:p
37、aixu();</p><p><b> break;</b></p><p> case 5:dingpiao();</p><p><b> break;</b></p><p> case 6:tuipiao();</p><p><b>
38、break; </b></p><p> case 0:</p><p><b> save();</b></p><p> printf("謝謝使用,再見! ");</p><p><b> break;</b></p><p&g
39、t; default:printf("您輸入不合法,請按回車鍵繼續(xù)");</p><p> getchar();</p><p><b> }</b></p><p> }while(j!=0);//判斷是否調(diào)用其他函數(shù)</p><p><b> }</b><
40、/p><p> void chushihua()//定義系統(tǒng)初始化函數(shù)</p><p><b> {</b></p><p> if(access("hangban.dat",0))</p><p><b> {</b></p><p><
41、b> build();</b></p><p><b> }</b></p><p><b> else</b></p><p><b> read();</b></p><p><b> }</b></p>
42、<p> void build()//定義建立數(shù)據(jù)文件函數(shù)</p><p><b> {</b></p><p> FILE *fp;//定義文件指針</p><p> if((fp=fopen("hangban.dat","wb"))==NULL)//打開文件并判定是否出錯(cuò)
43、 </p><p><b> {</b></p><p> printf("創(chuàng)建文件失敗! ");</p><p> getchar();</p><p><b> return;</b></p><p><b> }</b
44、></p><p> printf("請依次輸入航班信息(以回車鍵結(jié)束):\n"); </p><p> printf("-------------------------------------------------------------------------- \n");</p><p> fo
45、r(i=0;i<N;i++)</p><p><b> {</b></p><p> printf("請輸入航班號: "); </p><p> scanf("%d",&s[i].num);</p><p> printf("請輸入起始站: &
46、quot;);</p><p> scanf("%s",s[i].start);</p><p> printf("請輸入終點(diǎn)站: ");</p><p> scanf("%s",s[i].over);</p><p> printf("請輸入時(shí)間(星期幾)
47、: ");</p><p> scanf("%s",s[i].time);</p><p> printf("請輸入機(jī)票數(shù): ");</p><p> scanf("%d",&s[i].count);</p><p> fwrite(&s[i]
48、,sizeof(struct air),1,fp);</p><p><b> m++;</b></p><p> printf("添加完畢,是否繼續(xù)添加?請鍵入y或n以回車鍵結(jié)束:");</p><p> scanf("%s",ii);</p><p> if(strcm
49、p(ii,"y")!=0)//判斷是否繼續(xù)添加航班信息</p><p><b> {</b></p><p> fclose(fp);//關(guān)閉文件</p><p><b> return;</b></p><p><b> }</b>&l
50、t;/p><p><b> }</b></p><p><b> }</b></p><p> void read()//定義讀取文件函數(shù)</p><p><b> {</b></p><p><b> FILE *fp;</
51、b></p><p> if((fp=fopen("hangban.dat","r"))==NULL)</p><p><b> {</b></p><p> printf("創(chuàng)建文件失敗! ");</p><p> getchar();</
52、p><p><b> return;</b></p><p><b> }</b></p><p><b> i=0;</b></p><p> while(!feof(fp))</p><p><b> {</b></
53、p><p> fread(&s[i],sizeof(struct air),1,fp);//逐塊讀取數(shù)據(jù)</p><p><b> i++;</b></p><p> m++;//計(jì)算存在航班數(shù)</p><p><b> }</b></p><p><
54、;b> m--;</b></p><p> fclose(fp);</p><p><b> }</b></p><p> void save()//定義保存函數(shù)</p><p><b> {</b></p><p><b> FI
55、LE *fp;</b></p><p> if((fp=fopen("hangban.dat","wb"))==NULL) </p><p><b> {</b></p><p> printf("創(chuàng)建文件失敗! ");</p><p>
56、getchar();</p><p><b> return;</b></p><p><b> }</b></p><p> for(i=0;i<m;i++)//逐塊保存數(shù)據(jù)</p><p> fwrite(&s[i],sizeof(struct air),1,fp);
57、</p><p> fclose(fp);</p><p><b> }</b></p><p> void add()//定義增加航班信息函數(shù)</p><p><b> {</b></p><p><b> do{</b></p&g
58、t;<p> printf("請依次輸入您要增加的航班信息(以回車鍵結(jié)束): \n"); //打印提示信息</p><p> printf("-------------------------------------------------------------------------- \n");</p><p>
59、 printf("請輸入航班號: "); </p><p> scanf("%d",&s[m].num);</p><p> printf("請輸入起始站: ");</p><p> scanf("%s",s[m].start);</p><p
60、> printf("請輸入終點(diǎn)站: ");</p><p> scanf("%s",s[m].over);</p><p> printf("請輸入時(shí)間: ");</p><p> scanf("%s",s[m].time);</p><p>
61、; printf("請輸入機(jī)票數(shù): ");</p><p> scanf("%d",&s[m].count);</p><p><b> m++;</b></p><p> printf("添加完畢,是否繼續(xù)添加?請鍵入y或n以回車鍵結(jié)束:");</p>
62、<p> scanf("%s",ii);</p><p> }while(!strcmp(ii,"y"));//判斷是否繼續(xù)添加</p><p><b> }</b></p><p> void output()//定義輸出格式函數(shù)</p><p>&
63、lt;b> {</b></p><p> printf("航班號\t\t起始站\t\t終點(diǎn)站\t\t時(shí)間\t\t機(jī)票數(shù)\n");</p><p> for(i=0;i<m;i++)</p><p> printf(PRINT);//打印出信息</p><p><b> }&
64、lt;/b></p><p> void print()//定義顯示航班信息函數(shù)</p><p><b> {</b></p><p> printf("\n目前我們有如下航班:\n");</p><p> output();//調(diào)用輸出格式函數(shù)</p><
65、p> printf("\n請按回車鍵返回上層菜單 ");</p><p> getchar();</p><p> getchar();</p><p><b> }</b></p><p> void search()//定義查詢函數(shù)</p><p>&l
66、t;b> {</b></p><p><b> int n;</b></p><p><b> do</b></p><p><b> {</b></p><p> printf("\n請輸入航班號: ");</p>
67、<p> scanf("%d",&n);//輸入查詢的航班號</p><p> for(i=0;i<m;i++)</p><p><b> { </b></p><p> if(s[i].num==n)//按航班號判定輸出條件</p><p><b>
68、; { </b></p><p> printf("\n您所查找的航班信息為:\n ");</p><p> printf("航班號\t\t起始站\t\t終點(diǎn)站\t\t時(shí)間\t\t機(jī)票數(shù) \n\n");</p><p> printf(PRINT);//顯示信息 </p><p&g
69、t; printf("\n查詢完畢,按回車鍵繼續(xù)");</p><p> getchar();</p><p> getchar();</p><p><b> return;</b></p><p><b> }</b></p><p><
70、;b> }</b></p><p> printf("\n對不起,沒有您需要的信息!\n ");</p><p> printf("是否重新查找?請鍵入y或n以回車鍵結(jié)束 ");</p><p> scanf("%s",ii);</p><p> }whi
71、le(!strcmp(ii,"y"));//判定是否重新查找</p><p><b> } </b></p><p> void dingpiao()//定義訂票業(yè)務(wù)函數(shù)</p><p><b> {</b></p><p><b> int n;</
72、b></p><p> char a[10]="y";</p><p><b> do</b></p><p><b> {</b></p><p> search();//調(diào)用查詢模塊</p><p> if(!strcmp(ii,&q
73、uot;n"))</p><p><b> {</b></p><p> printf("對不起!沒有找到您所需要的航班,所以不能訂票。\n");</p><p> printf("\n請按回車鍵返回上層菜單 ");</p><p> getchar();<
74、;/p><p> getchar();</p><p> strcpy(ii,"n");</p><p><b> break;</b></p><p><b> }</b></p><p><b> do</b></p&
75、gt;<p><b> {</b></p><p> printf("請輸入您要訂的機(jī)票數(shù)(以回車鍵結(jié)束): ");</p><p> scanf("%d",&n);</p><p> if(n<=0)//判定機(jī)票數(shù)是否出錯(cuò)</p><p&
76、gt;<b> {</b></p><p> printf("輸入錯(cuò)誤!至少需訂1張機(jī)票。\n");</p><p><b> }</b></p><p> else if(s[i].count==0)//判定機(jī)票是否售完</p><p><b> {<
77、/b></p><p> printf("對不起,你所選擇的航班的機(jī)票已售完!\n");</p><p><b> break;</b></p><p><b> }</b></p><p> else if(s[i].count!=0&&s[i].
78、count>=n)//判定機(jī)票數(shù)是否大于等于訂票數(shù)</p><p><b> {</b></p><p> s[i].count=s[i].count-n;</p><p> printf("訂票成功! ");</p><p><b> break;</b><
79、;/p><p><b> }</b></p><p> else if(s[i].count<n)//判定機(jī)票數(shù)是否小于訂票數(shù)</p><p><b> { </b></p><p> printf("對不起,你所選擇的航班只剩 %d張機(jī)票\n", s[i].count
80、);</p><p> printf("是否需要重新輸入機(jī)票數(shù)?請輸入y或n以回車鍵結(jié)束: ");//判定是否重新輸入訂票數(shù)</p><p> scanf("%s",a);</p><p><b> }</b></p><p> }while(!strcmp(a,"
81、;y"));</p><p> printf("是否需要訂其他航班的機(jī)票?請輸入y或n以回車鍵結(jié)束: ");</p><p> scanf("%s",a);</p><p> }while(!strcmp(a,"y"));//判定是否繼續(xù)訂票</p><p>&l
82、t;b> }</b></p><p> void tuipiao()//定義退票函數(shù)</p><p><b> {</b></p><p><b> int n;</b></p><p> char a[10];</p><p><b&g
83、t; do</b></p><p><b> {</b></p><p> search();//調(diào)用查詢函數(shù)</p><p> if(!strcmp(ii,"n"))</p><p><b> {</b></p><p> p
84、rintf("對不起!沒有找到您所需要的航班,所以不能退票。\n");</p><p> printf("\n請按回車鍵返回上層菜單 ");</p><p> getchar();</p><p> getchar();</p><p> strcpy(ii,"n");<
85、;/p><p><b> break;</b></p><p><b> }</b></p><p> printf("請輸入您要退的機(jī)票數(shù)目: ");</p><p> scanf("%d",&n);</p><p>
86、 if(n<=0)//判定票數(shù)是否有效</p><p> printf("輸入錯(cuò)誤!至少需退1張機(jī)票。 ");</p><p><b> else </b></p><p><b> {</b></p><p> s[i].count=s[i].count+n
87、;</p><p> printf("退票成功! ");</p><p><b> }</b></p><p> printf("是否繼續(xù)? 請鍵入y或n以回車鍵結(jié)束: ");//判定是否繼續(xù)退票</p><p> scanf("%s",a);&l
88、t;/p><p> }while(!strcmp(a,"y"));//判定并跳出循環(huán) </p><p><b> }</b></p><p> void paixu()//定義排序函數(shù)</p><p><b> {</b></p><p>&
89、lt;b> int n;</b></p><p> printf("\n******************************************************************************** "); </p><p> printf("1.按航班號從小到大排序\n"</p
90、><p> "\t2.按航班號從大到小排序\n");</p><p> printf("******************************************************************************** "); </p><p> printf("請?jiān)?-2中選擇以回
91、車鍵結(jié)束: ");</p><p> scanf("%d",&n);</p><p><b> switch(n)</b></p><p><b> {</b></p><p> case 1:paixu1();//調(diào)用從小到大排序函數(shù)</p&
92、gt;<p><b> break;</b></p><p> case 2:paixu2();//調(diào)用從大到小排序函數(shù)</p><p><b> break;</b></p><p><b> }</b></p><p> printf("排
93、序后的航班信息為:\n");</p><p> output();//顯示排序后航班信息</p><p> printf("\n請按回車鍵返回上層菜單 ");</p><p> getchar();</p><p> getchar();</p><p><b>
94、 }</b></p><p> void paixu1()//定義從小到大排序函數(shù)</p><p><b> {</b></p><p><b> int k,j;</b></p><p> struct air t;</p><p> for(i=
95、0;i<m;i++)//選擇法排序</p><p><b> {</b></p><p><b> k=i;</b></p><p> for(j=i+1;j<m;j++)</p><p> if(s[k].num>s[j].num)</p><p&g
96、t;<b> k=j;</b></p><p><b> if(i!=k)</b></p><p><b> {</b></p><p><b> t=s[k];</b></p><p> s[k]=s[i];</p><p&
97、gt;<b> s[i]=t;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> void paixu2()//定義從大到小排序函數(shù)</p>
98、<p><b> {</b></p><p><b> int k,j;</b></p><p> struct air t;</p><p> for(i=0;i<m;i++)</p><p><b> {</b></p><
99、p><b> k=i;</b></p><p> for(j=i+1;j<m;j++)</p><p> if(s[k].num<s[j].num)</p><p><b> k=j;</b></p><p><b> if(i!=k)</b><
100、;/p><p><b> {</b></p><p><b> t=s[k];</b></p><p> s[k]=s[i];</p><p><b> s[i]=t;</b></p><p><b> }</b></p
101、><p><b> }</b></p><p><b> }</b></p><p><b> 測試與分析</b></p><p><b> 4.1測試數(shù)據(jù)選擇</b></p><p><b> 表4-1</b
102、></p><p><b> 4.2測試結(jié)果分析</b></p><p> 在輸入測試數(shù)據(jù)后選擇訂票業(yè)務(wù)并再次輸入相應(yīng)的數(shù)據(jù)會(huì)完成訂票業(yè)務(wù)。在訂票業(yè)務(wù)中調(diào)用dingpiao函數(shù),所有函數(shù)的時(shí)間復(fù)雜度為O(n),系統(tǒng)本身采用線性結(jié)構(gòu)模型。</p><p><b> 總 結(jié)</b></p>&l
103、t;p> 在今后的工作、學(xué)習(xí)中我將認(rèn)真總結(jié)經(jīng)驗(yàn)教訓(xùn),努力使自己成為一名技術(shù)過硬、工作嚴(yán)謹(jǐn)、思維活躍的工程人員,為提高人們的生活質(zhì)量做出更大的貢獻(xiàn)</p><p> 該系統(tǒng)主要完成以下功能</p><p> 功能:此系統(tǒng)功能分為管理員模塊和前臺(tái)票務(wù)員模塊;管理員模塊主</p><p> 要負(fù)責(zé)航班信息管理,包括增加新航班、修改原有航班、刪除航班的功能;前
104、</p><p> 臺(tái)票務(wù)員模塊包括乘客信息管理、訂票管理、航班查詢的工能。</p><p> 性能:能夠高效而且快速的管理航班信息及訂票功能,航班查詢可在較短</p><p> 時(shí)間內(nèi)完成,數(shù)據(jù)能夠?qū)崟r(shí)反映到終端,以確保信息查詢的準(zhǔn)確性,方便乘客</p><p> 訂票,減少系統(tǒng)錯(cuò)誤。 </p><p>&l
105、t;b> 心得體會(huì)</b></p><p> 在這次程序編制的過程中出現(xiàn)了很多問題,主要原因是自己以前接觸的關(guān)于編制程序的知識(shí)的缺乏,通過飛機(jī)航班訂票系統(tǒng)的開發(fā)讓我知道了自己的不足和缺點(diǎn),寫出一個(gè)好的程序需要合作精神,一個(gè)人的力量畢竟是有限的團(tuán)隊(duì)力量才是無窮的。一個(gè)好的程序員一定是從程序堆里走出來的,只有通過參與具體程序的開發(fā)才知道自己知識(shí)的有限,才會(huì)學(xué)會(huì)具體的分析問題,是自己的邏輯性和層次
106、性得到良好的鍛煉,</p><p> 課程設(shè)計(jì)是一門專業(yè)課,給我很多專業(yè)知識(shí)以及專業(yè)技能上了提升,同時(shí)又是一門思辨課,讓我感觸很深,是我對抽象的理論有了具體的認(rèn)識(shí),在這次課程設(shè)計(jì)中知道了以前沒有接觸過的很多函數(shù),C語言中的文件部分因?yàn)榉N種原因都沒有得到及時(shí)的學(xué)習(xí),以前很多東西都沒有學(xué)好,就像老師以前說的:“一天敲一個(gè)小時(shí)的鍵盤程序就能學(xué)好了?!爆F(xiàn)在開始相信了,在以后的學(xué)習(xí)中自己要加強(qiáng)程序的鍛煉,多參考好的程序和
107、各種各樣的函數(shù),建立起自己的函數(shù)庫,為以后學(xué)習(xí)打下良好的基礎(chǔ)。 </p><p><b> 參考文獻(xiàn)</b></p><p> [1]嚴(yán)蔚敏、吳為民.數(shù)據(jù)結(jié)構(gòu)(C語言版).北京:清華大學(xué)出版社.2007[2]周二強(qiáng).新編C程序設(shè)計(jì).北京:清華大學(xué)出版社.2011[3]錢能.C++程序設(shè)計(jì)教程.北京.清華大學(xué)出版社.1999[4]鄧文華.數(shù)據(jù)結(jié)構(gòu)實(shí)驗(yàn)和實(shí)訓(xùn)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c++課程設(shè)計(jì)報(bào)告---飛機(jī)訂票系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告---飛機(jī)訂票系統(tǒng)
- c++課程設(shè)計(jì)報(bào)告飛機(jī)訂票管理系統(tǒng)
- c++課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- c課程設(shè)計(jì)報(bào)告飛機(jī)訂票系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告飛機(jī)訂票系統(tǒng)
- c語言課程設(shè)計(jì)報(bào)告飛機(jī)訂票系統(tǒng)
- 《c++程序設(shè)計(jì)》課程設(shè)計(jì)報(bào)告--訂票系統(tǒng)
- c語言課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- c語言課程設(shè)計(jì)---飛機(jī)訂票系統(tǒng)
- c語言課程設(shè)計(jì)--飛機(jī)訂票系統(tǒng)
- c語言課程設(shè)計(jì)——飛機(jī)訂票系統(tǒng)
- c語言飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)c語言課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)報(bào)告
- c++課程設(shè)計(jì)報(bào)告_航空訂票系統(tǒng)的菜單設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- 飛機(jī)訂票系統(tǒng)課程設(shè)計(jì)
- c++課程設(shè)計(jì)報(bào)告--子彈打飛機(jī)
評論
0/150
提交評論