版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 經(jīng)濟(jì)管理學(xué)院本科課程設(shè)計(jì)論文</p><p><b> 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)</b></p><p><b> 目 錄</b></p><p> 第1章校園導(dǎo)游咨詢系統(tǒng)概述- 1 -</p><p> 1.1校園導(dǎo)游咨詢系統(tǒng)目的- 1 -</p>&
2、lt;p> 1.2校園部分景點(diǎn)平面圖- 1 -</p><p> 1.3軟件運(yùn)行和開(kāi)發(fā)工具- 1 -</p><p> 第2章需求分析- 2 -</p><p> 2.1程序要求- 2 -</p><p> 2.2程序功能- 2 -</p><p> 2.3測(cè)試數(shù)據(jù)- 2 -&
3、lt;/p><p> 第3章系統(tǒng)設(shè)計(jì)- 3 -</p><p> 3.1設(shè)計(jì)思路- 3 -</p><p> 3.2系統(tǒng)結(jié)構(gòu)- 3 -</p><p> 第4章程序設(shè)計(jì)與編碼- 4 -</p><p> 4.1概要設(shè)計(jì)說(shuō)明- 4 -</p><p> 4.2詳細(xì)設(shè)計(jì)
4、- 4 -</p><p> 4.2.1介紹景點(diǎn)函數(shù)- 4 -</p><p> 4.2.2主函數(shù)- 6 -</p><p> 第5章系統(tǒng)測(cè)試- 8 -</p><p> 5.1運(yùn)行結(jié)果界面- 8 -</p><p> 5.2查找景點(diǎn)相關(guān)信息的結(jié)果- 8 -</p><
5、;p> 5.3查找最短路徑的結(jié)果- 9 -</p><p> 第6章航空客運(yùn)訂票系統(tǒng)概述- 10 -</p><p> 6.1航空客運(yùn)訂票系統(tǒng)簡(jiǎn)介- 10 -</p><p> 6.2航空客運(yùn)訂票系統(tǒng)原理- 10 -</p><p> 第7章航空客運(yùn)訂票系統(tǒng)需求分析- 11 -</p><
6、;p> 7.1程序背景- 11 -</p><p> 7.2系統(tǒng)功能- 11 -</p><p> 第8章航空客運(yùn)訂票系統(tǒng)需求分析- 12 -</p><p> 8.1查詢- 12 -</p><p> 8.2訂票- 12 -</p><p> 8.3退票- 12 -</
7、p><p> 第9章航空客運(yùn)訂票系統(tǒng)設(shè)計(jì)- 13 -</p><p> 9.1系統(tǒng)結(jié)構(gòu)- 13 -</p><p> 9.2系統(tǒng)流程圖- 14 -</p><p> 9.3詳細(xì)設(shè)計(jì)- 14 -</p><p> 9.3.1查詢功能- 14 -</p><p> 9.3
8、.2退票功能- 15 -</p><p> 第10章系統(tǒng)測(cè)試- 18 -</p><p> 10.1系統(tǒng)主界面- 18 -</p><p> 10.2查詢航線信息- 19 -</p><p> 10.3進(jìn)行訂票操作- 19 -</p><p> 10.4所需已經(jīng)被預(yù)訂的情況- 20 -
9、</p><p> 10.5退票界面- 20 -</p><p> 第11章心得與體會(huì)- 21 -</p><p> 參考文獻(xiàn)- 22 -</p><p><b> 校園導(dǎo)游咨詢系統(tǒng)</b></p><p> 校園導(dǎo)游咨詢系統(tǒng)概述</p><p> 校
10、園導(dǎo)游咨詢系統(tǒng)目的</p><p> 設(shè)計(jì)一個(gè)校園導(dǎo)游系統(tǒng),為來(lái)客查詢校園的各種信息。并熟練掌握?qǐng)D的知識(shí),加深課堂所學(xué)用于實(shí)踐。</p><p><b> 校園部分景點(diǎn)平面圖</b></p><p> 圖1-1 東北電力部分景點(diǎn)平面圖</p><p><b> 軟件運(yùn)行和開(kāi)發(fā)工具</b>&l
11、t;/p><p> windowsxp操作系統(tǒng)</p><p> VisualC++6.0開(kāi)發(fā)環(huán)境</p><p><b> 需求分析</b></p><p><b> 程序要求</b></p><p> 設(shè)計(jì)你所在的學(xué)校的校園平面圖,所含景點(diǎn)不少于10個(gè)。以圖中頂點(diǎn)表
12、示校內(nèi)各景點(diǎn),存放景點(diǎn)的名稱、代號(hào)、簡(jiǎn)介等信息;以邊表示路徑,存放路徑長(zhǎng)度等相關(guān)信息。</p><p> 為來(lái)訪客人提供圖中任意景點(diǎn)相關(guān)信息的查詢。</p><p> 為來(lái)訪客人提供圖中任意景點(diǎn)的問(wèn)路查詢,即查詢?nèi)我鈨蓚€(gè)景點(diǎn)之間的最短的簡(jiǎn)單路徑。</p><p><b> 程序功能</b></p><p> 查詢
13、校園各景點(diǎn)的信息并找出最短路徑。</p><p><b> 測(cè)試數(shù)據(jù)</b></p><p> 出發(fā)點(diǎn):1:新校區(qū)寢室 </p><p> 到達(dá)點(diǎn):10:第二教學(xué)樓</p><p> 出發(fā)點(diǎn):10:第二教學(xué)樓</p><p> 到達(dá)點(diǎn):1: 新校區(qū)寢室</p><p&
14、gt; 出發(fā)點(diǎn):1:新校區(qū)寢室 </p><p> 到達(dá)點(diǎn):2:第三教學(xué)樓</p><p> 出發(fā)點(diǎn):6:專家招待所 </p><p> 到達(dá)點(diǎn):10:第二教學(xué)樓</p><p> 結(jié)果正常,未發(fā)現(xiàn)錯(cuò)誤</p><p><b> 系統(tǒng)設(shè)計(jì)</b></p><p>
15、;<b> 設(shè)計(jì)思路</b></p><p><b> 創(chuàng)建校園圖:</b></p><p> 先定義節(jié)點(diǎn)個(gè)數(shù)N,邊的最大值(MAXedg),節(jié)點(diǎn)(景點(diǎn)名稱、景點(diǎn)信息),鄰接點(diǎn),邊,頂點(diǎn)向量,當(dāng)前頂點(diǎn)數(shù)和邊數(shù)。</p><p> 先給一個(gè)節(jié)點(diǎn)賦上其相關(guān)信息,然后再用p = (Node)malloc(sizeof(e
16、dgenode))語(yǔ)句申請(qǐng)下一結(jié)點(diǎn),再給所申請(qǐng)的節(jié)點(diǎn)賦上相關(guān)信息,直到節(jié)點(diǎn)數(shù)為N=10為止。</p><p> 讀入道路的起始點(diǎn),為鄰接矩陣的邊賦相應(yīng)的值。</p><p> 節(jié)點(diǎn)和邊的相關(guān)信息都弄好了后,校園圖也就創(chuàng)建好了</p><p> 利用函數(shù)Name給10個(gè)節(jié)點(diǎn)賦上相應(yīng)的名稱,利用函數(shù)Information給各節(jié)點(diǎn)添加相應(yīng)的介紹信息。</p&g
17、t;<p> 利用函數(shù)travgraph來(lái)查找景點(diǎn)信息,要查找景點(diǎn)名稱時(shí)調(diào)用Name函數(shù),要查找景點(diǎn)介紹信息時(shí)調(diào)用Information函數(shù)。</p><p> 手動(dòng)創(chuàng)建一個(gè)校園圖creat(Matrix_Graph *G),然后為相應(yīng)的邊賦上真正的值。</p><p> 用path函數(shù)來(lái)求任意兩景點(diǎn)之間的最短路徑。</p><p> 用mai
18、n函數(shù)來(lái)輸出結(jié)果:用switch語(yǔ)句分別輸出,要?jiǎng)?chuàng)建校園圖時(shí)調(diào)用creatgraph函數(shù);查找景點(diǎn)相關(guān)信息時(shí)調(diào)用travgraph函數(shù);要查找任意兩景點(diǎn)之間的最短路徑時(shí),先輸入你目前所在的位置,再輸入你的目的地,最后調(diào)用path函數(shù)。</p><p><b> 系統(tǒng)結(jié)構(gòu)</b></p><p><b> 圖3-1 系統(tǒng)結(jié)構(gòu)</b></p
19、><p><b> 程序設(shè)計(jì)與編碼</b></p><p><b> 概要設(shè)計(jì)說(shuō)明</b></p><p> 用無(wú)向網(wǎng)表示你所在學(xué)校的校園景點(diǎn)平面圖,圖中頂點(diǎn)表示主要景點(diǎn),存放景點(diǎn)的編號(hào)、名稱、簡(jiǎn)介等信息,圖中的邊表示景點(diǎn)間的道路,存放路徑長(zhǎng)度等信息。要求實(shí)現(xiàn)以下功能:</p><p> 查詢各
20、景點(diǎn)的相關(guān)信息。</p><p> 查詢圖中任意兩個(gè)景點(diǎn)間的最短路徑。</p><p> 查詢圖中任意兩個(gè)景點(diǎn)間的所有路徑。</p><p> 用圖的結(jié)點(diǎn)代表景點(diǎn),用圖的邊代表景點(diǎn)意見(jiàn)的路徑,首先設(shè)計(jì)一個(gè)圖類,結(jié)點(diǎn)值代表景點(diǎn)的信息,邊的權(quán)值代表景點(diǎn)之間的距離,結(jié)點(diǎn)值及邊的權(quán)值用順序表存儲(chǔ),所以需要設(shè)計(jì)一個(gè)順序表類,本系統(tǒng)需要查詢景點(diǎn)信息和求一個(gè)景點(diǎn)到另一個(gè)景點(diǎn)
21、的最短路徑長(zhǎng)度及路線,為方便操作,所以給每個(gè)景點(diǎn)一個(gè)編號(hào),用結(jié)構(gòu)體類型來(lái)實(shí)現(xiàn)。計(jì)算路徑長(zhǎng)度和最短路線是可以用Dijkstra(迪杰斯特拉)算法實(shí)現(xiàn),在主函數(shù)中用switch選擇語(yǔ)句執(zhí)行瀏覽景點(diǎn)信息或查詢最短路徑。</p><p><b> 詳細(xì)設(shè)計(jì)</b></p><p><b> 介紹景點(diǎn)函數(shù)</b></p><p>
22、; void introduce()</p><p><b> {</b></p><p><b> int n;</b></p><p> cout<<"請(qǐng)輸入查詢景點(diǎn)編號(hào):"<<endl;</p><p><b> cin>&
23、gt;n; </b></p><p><b> switch(n)</b></p><p><b> {</b></p><p><b> case 1:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<M
24、Gr.vexs[1].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[1].date.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[1].date.introduce<<endl;</p><p><b> break;</b
25、></p><p><b> case 2:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<MGr.vexs[2].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[2].date.name;</p><p> cout&l
26、t;<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[2].date.introduce<<endl;</p><p><b> break;</b></p><p><b> case 3:</b></p><p> cout<<"景點(diǎn)編號(hào):"&
27、lt;<MGr.vexs[3].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[3].date.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[3].date.introduce<<endl;</p><p><b> brea
28、k;</b></p><p><b> case 4:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<MGr.vexs[4].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[4].date.name;</p><p>
29、 cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[4].date.introduce<<endl;</p><p><b> break;</b></p><p><b> case 5:</b></p><p> cout<<"景點(diǎn)編號(hào)
30、:"<<MGr.vexs[5].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[5].date.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[5].date.introduce<<endl;</p><p><b&g
31、t; break;</b></p><p><b> case 6:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<MGr.vexs[6].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[6].date.name;</p>&
32、lt;p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[6].date.introduce<<endl;</p><p><b> break;</b></p><p><b> case 7:</b></p><p> cout<<&q
33、uot;景點(diǎn)編號(hào):"<<MGr.vexs[7].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[7].date.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[7].date.introduce<<endl;</p><p>
34、;<b> break;</b></p><p><b> case 8:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<MGr.vexs[8].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[8].date.name;</
35、p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[8].date.introduce<<endl;</p><p><b> break;</b></p><p><b> case 9:</b></p><p> cout&l
36、t;<"景點(diǎn)編號(hào):"<<MGr.vexs[9].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[9].date.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[9].date.introduce<<endl;</p>
37、<p><b> break;</b></p><p><b> case 10:</b></p><p> cout<<"景點(diǎn)編號(hào):"<<MGr.vexs[10].date.number<<"景點(diǎn)名稱:"<<MGr.vexs[10].date
38、.name;</p><p> cout<<"景點(diǎn)簡(jiǎn)介:"<<MGr.vexs[10].date.introduce<<endl;</p><p><b> break;</b></p><p><b> default:</b></p><
39、p> cout<<"輸入序號(hào)錯(cuò)誤。";</p><p><b> break;</b></p><p><b> }</b></p><p><b> }</b></p><p><b> 主函數(shù)</b>&l
40、t;/p><p> void main()</p><p><b> {</b></p><p><b> char k;</b></p><p><b> init();</b></p><p> cout<<"┏━━━━━
41、━━━━━━━━━━━━━━━━━━━━━━━━━━━┓\n";</p><p> cout<<"┃┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓┃\n";</p><p> cout<<"┃┃
42、 ┃┃\n";</p><p> cout<<"┃┃ ┃┃\n";</p><p> cout<<"┃┃ 歡迎使用校園導(dǎo)游咨詢
43、 ┃┃\n";</p><p> cout<<"┃┃ 本程序?qū)槟旖菡业綎|電的景物 ┃┃\n";</p><p> cout<<"┃┃ ┃┃\n&
44、quot;; </p><p> cout<<"┃┃ 2012.1.3 ┃┃\n"; </p><p> cout<<"┃┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛┃\n"; </p>
45、<p> cout<<"┗━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┛\n"; </p><p><b> while(1)</b></p><p><b> {</b></p><p> cout<<"1.景點(diǎn)信息查詢請(qǐng)按“1
46、” 鍵\n";</p><p> cout<<"2.景點(diǎn)最短路徑查詢請(qǐng)按“2”鍵\n";</p><p> cout<<"3.退出系統(tǒng)請(qǐng)按“3”鍵\n"; </p><p> cout<<"請(qǐng)選擇服務(wù):";</p><p><
47、b> cin>>k;</b></p><p><b> switch(k)</b></p><p><b> {</b></p><p><b> case '1':</b></p><p> cout<<&q
48、uot;景點(diǎn)簡(jiǎn)介查詢(請(qǐng)輸入1~10)。";</p><p> introduce();</p><p><b> break;</b></p><p><b> case '2':</b></p><p> cout<<"景點(diǎn)最短路徑查詢。&
49、quot;;</p><p> shortestdistance();</p><p><b> break;</b></p><p><b> case '3':</b></p><p><b> exit(0); </b></p>&l
50、t;p><b> } </b></p><p><b> }</b></p><p> system("pause");</p><p><b> }</b></p><p><b> 系統(tǒng)測(cè)試</b></p>
51、;<p><b> 運(yùn)行結(jié)果界面</b></p><p> 圖5-1 運(yùn)行結(jié)構(gòu)界面</p><p> 查找景點(diǎn)相關(guān)信息的結(jié)果</p><p> 圖5-2 查找景點(diǎn)相關(guān)信息的結(jié)果</p><p><b> 查找最短路徑的結(jié)果</b></p><p>
52、圖5-3 查找最短路徑的結(jié)果</p><p><b> 航空客運(yùn)訂票系統(tǒng)</b></p><p> 航空客運(yùn)訂票系統(tǒng)概述</p><p> 航空客運(yùn)訂票系統(tǒng)簡(jiǎn)介</p><p> 問(wèn)題描述:每條航線所設(shè)計(jì)的信息由:終點(diǎn)站名、航班號(hào)、飛行日期(星期幾飛行)、成員定額、余票量、訂票的客戶名單(包括姓名、訂票量、艙位等
53、級(jí)1,2或3)以及等候替補(bǔ)的客戶名單(包括姓名、所需數(shù)量)。</p><p> 航空客運(yùn)訂票系統(tǒng)原理</p><p> 以棧分別模擬航空路線及乘客信息,以文件分別存儲(chǔ)航空路線及乘客信息,以管理員操作和乘客訂票兩大模塊模擬航空訂票系統(tǒng)的過(guò)程。每一條航線包括五個(gè)數(shù)據(jù)項(xiàng):航班號(hào), 飛機(jī)號(hào), 目的地, 訂票數(shù), 余票數(shù),用鏈表進(jìn)行插入、刪除操作。乘客能夠使用鏈表模擬進(jìn)行查詢航線信息,訂票,退票
54、的操作,輸出票號(hào),或輸出票以售空。</p><p> 航空客運(yùn)訂票系統(tǒng)需求分析</p><p><b> 程序背景</b></p><p> 飛機(jī)場(chǎng)每天要接受大量的訂票退票服務(wù),還有互聯(lián) 網(wǎng)上的異地訂票等。對(duì)這些數(shù)量巨大的數(shù)據(jù),需要一個(gè)專門的軟件來(lái)進(jìn)行管理和操作。軟件至少需要具備的基本功能包括:接受訂票,處理退票,查詢乘客信息,查詢航班信
55、息等等。</p><p><b> 系統(tǒng)功能</b></p><p> 查詢航線:根據(jù)客戶提出的終點(diǎn)站點(diǎn)輸出如下信息:航班號(hào)、飛機(jī)號(hào)、星期幾飛行,最近一天航班的日期和余票額;</p><p> 承辦訂票業(yè)務(wù):根據(jù)客戶提出的要求(航班號(hào)、訂票數(shù)量)查詢?cè)摵桨嗥鳖~情況,若有余票,則為客戶辦理訂票手續(xù),輸出座位號(hào);若已滿員或余票少于訂票額,則需
56、重新詢問(wèn)客戶要求。若需要,可登記排隊(duì)候補(bǔ);</p><p> 承辦退票業(yè)務(wù):根據(jù)客戶提出的情況(日期、航班號(hào)),為客戶辦理退票手續(xù),然后查詢?cè)摵桨嗍欠裼衅渌伺抨?duì)候補(bǔ),首先詢問(wèn)排在第一位的客戶,若所退票額能滿足他的要求,則為他辦理訂票手續(xù),否則依次詢問(wèn)其它排隊(duì)候補(bǔ)的客戶。</p><p> 航空客運(yùn)訂票系統(tǒng)需求分析</p><p> 可行性研究的目的是為了對(duì)問(wèn)
57、題進(jìn)行研究,以最小的代價(jià)在最短的時(shí)間內(nèi)確定問(wèn)題是否可解經(jīng)過(guò)對(duì)此項(xiàng)目進(jìn)行詳細(xì)調(diào)查研究,初擬系統(tǒng)實(shí)現(xiàn)報(bào)告,對(duì)軟件開(kāi)發(fā)中將要面臨的問(wèn)題及其解決方案進(jìn)行初步設(shè)計(jì)及合理安排。明確開(kāi)發(fā)風(fēng)險(xiǎn)及其所帶來(lái)的經(jīng)濟(jì)效益。本報(bào)告經(jīng)審核后,交軟件經(jīng)理審查。</p><p><b> 查詢</b></p><p> 可以查詢某個(gè)航線的情況(如,輸入航班號(hào),查詢起降時(shí)間,起飛抵達(dá)城市,航班票價(jià)
58、,票價(jià)折扣,確定航班是否滿倉(cāng)); </p><p> 可以輸入起飛抵達(dá)城市,查詢飛機(jī)航班情況;</p><p> 可以輸入乘客信息,查詢乘客所訂票情況;</p><p><b> 訂票</b></p><p> 可以訂票,如果該航班已經(jīng)無(wú)票,可以提供相關(guān)可選擇航班; </p><p>&l
59、t;b> 退票</b></p><p> 可退票,退票后修改相關(guān)數(shù)據(jù)文件; </p><p> 客戶資料有姓名,證件號(hào),訂票數(shù)量及航班情況,訂單要有編號(hào)。</p><p> 航空客運(yùn)訂票系統(tǒng)設(shè)計(jì)</p><p><b> 系統(tǒng)結(jié)構(gòu)</b></p><p><b&g
60、t; 圖9-1 系統(tǒng)結(jié)構(gòu)</b></p><p><b> 系統(tǒng)流程圖</b></p><p> 圖9-2 系統(tǒng)流程圖</p><p><b> 詳細(xì)設(shè)計(jì)</b></p><p><b> 查詢功能</b></p><p> vo
61、id chaxungongnen(){</p><p><b> int n;</b></p><p> printf("\t 查 找 航 線 信 息 \n");</p><p> printf("\t╔═════════════╗\n");</p><p&g
62、t; printf("\t║ 1. 通過(guò)目的地查詢 ║\n");</p><p> printf("\t║ 2. 通過(guò)航班號(hào)查詢 ║\n");</p><p> printf("\t╚═════════════╝\n");</p><p> printf("\t
63、請(qǐng)選擇:");</p><p> scanf("%d",&n);</p><p> printf("\n");//格式化</p><p><b> switch(n)</b></p><p><b> {</b></p>
64、<p> case 1:mddchaxun();</p><p><b> break;</b></p><p> case 2:hbhchaxun();</p><p><b> break;</b></p><p> default :break;</p>&
65、lt;p><b> }</b></p><p><b> }</b></p><p><b> 退票功能</b></p><p> void tuipiaogongnen()//*******************************************************
66、********退票功能</p><p><b> {</b></p><p> Linklist p=L;</p><p> Yidingkehu *h=H,*h1,*h2;</p><p> linkQueue q=Q;</p><p> char c[15],name1[15];&
67、lt;/p><p> int m=1,piao,n;//</p><p><b> gets(c); </b></p><p> printf("請(qǐng)輸入航班號(hào):"); gets(c); </p><p> p=L;//->next;</p><p><b>
68、 if(p) </b></p><p><b> {</b></p><p> do{ //使用do while來(lái)查找是否有此航班</p><p><b> if(!p)</b></p><p> {//如果是到了表尾且沒(méi)有匹配,goto至再輸入航班號(hào)</p>&
69、lt;p> printf("\n對(duì)不起,沒(méi)有你要找的航班:\n"); </p><p> goto loop1;</p><p><b> }</b></p><p> m=strcmpi(p->hangbanhao,c);//如果匹配的話,m=0</p><p><b>
70、; if(m==0) </b></p><p><b> {</b></p><p> printf("\t航班信息:\n");</p><p> printf("航班號(hào):%s\n",p->hangbanhao);</p><p> printf(&qu
71、ot;飛機(jī)號(hào):%s\n",p->feijihao);</p><p> printf("飛行時(shí)間:%d\n",p->feixingriqi); </p><p> printf("余票量:%d\n",p->yupiao);}</p><p> else p=p->next;</p&
72、gt;<p> }while(m!=0);</p><p><b> if(m==0)</b></p><p> {//如果找到了,就來(lái)給他退票</p><p><b> do{</b></p><p> h=p->yiding;</p><p>
73、;<b> if(h)</b></p><p><b> { </b></p><p> printf("請(qǐng)輸入你的姓名:"); </p><p> gets(name1);//gets(name1);</p><p> printf("請(qǐng)輸入你訂的票數(shù):&q
74、uot;); </p><p> scanf("%d",&piao);</p><p> printf("\n");</p><p><b> h1=h;</b></p><p> h=h->next1;</p><p> if(st
75、rcmpi(h->name,name1)==0&&h->dingpiaoshu==piao)//如果名字和訂的票數(shù)相等,則就給他取消訂票</p><p><b> {</b></p><p> p->yupiao+=h->dingpiaoshu;</p><p><b> h2=h;<
76、;/b></p><p> h1->next1=h->next1;</p><p><b> free(h2);</b></p><p> printf("你取消訂票成功:\n\n"); </p><p> struct Weidingkehu *q3;</p>
77、<p> q.front=p->yudingqueue;</p><p> if(q.front==q.rear) {printf("沒(méi)有人預(yù)訂票:\n"); goto loop1;}</p><p> if((p->yupiao)>=(q.front->next2->yudingpiao))</p><
78、;p><b> {</b></p><p> h2=(struct Yidingkehu*)malloc(sizeof(Yidingkehu));</p><p> strcpy(h2->name,q.front->next2->name);</p><p> h2->dingpiaoshu=q.front
79、->next2->yudingpiao;</p><p> n=p->yupiao-q.front->next2->yudingpiao;</p><p> p->yupiao=n;</p><p> q3=Q.front->next2;//</p><p> q.front->next
80、2=q3->next2;//這二語(yǔ)句來(lái)刪除結(jié)點(diǎn)</p><p> if(q.rear==q3) q.rear=q.front;</p><p> free(q3);//釋放空間</p><p> printf("鏈隊(duì)中刪除成功\n");</p><p> h2->next1=h->next1;&l
81、t;/p><p> h->next1=h2;//為之插入進(jìn)已訂票客戶鏈表中</p><p> printf("為預(yù)訂的客戶訂票成功\n");</p><p><b> }</b></p><p> else printf("余票數(shù)不夠,不能為預(yù)訂客戶訂票!\n");<
82、;/p><p><b> }</b></p><p><b> else </b></p><p> { //如果沒(méi)有找到,即系統(tǒng)中沒(méi)有該人的信息,提示是否來(lái)重新查找 </p><p> printf("對(duì)不起,該航班沒(méi)有人訂票或者是你沒(méi)有訂該航班的票\n");</p&
83、gt;<p> printf("是否要重新查找并取消訂票?\n");</p><p> printf("需要請(qǐng)輸入1 否則請(qǐng)按2 ");</p><p> scanf("%d",&m);</p><p> printf("\n");</p>
84、<p><b> }</b></p><p><b> }</b></p><p> }while(m==1);</p><p><b> }</b></p><p><b> }</b></p><p>&l
85、t;b> loop1: ;</b></p><p><b> }</b></p><p><b> 系統(tǒng)測(cè)試</b></p><p><b> 系統(tǒng)主界面</b></p><p> 圖10-1 系統(tǒng)主界面</p><p>&l
86、t;b> 查詢航線信息</b></p><p> 圖10-2 系統(tǒng)主界面</p><p><b> 進(jìn)行訂票操作</b></p><p> 圖10-3 進(jìn)行訂票操作</p><p> 所需已經(jīng)被預(yù)訂的情況</p><p> 圖10-4 余票為零</p>
87、<p><b> 退票界面</b></p><p> 圖10-5 退票界面</p><p><b> 心得與體會(huì)</b></p><p> 通過(guò)本次課程設(shè)計(jì),對(duì)圖的概念有了一個(gè)新的認(rèn)識(shí),在學(xué)習(xí)離散數(shù)學(xué)的時(shí)候,總覺(jué)得圖是很抽象的東西,但是在學(xué)習(xí)了《數(shù)據(jù)結(jié)構(gòu)與算法》這門課程之后,我慢慢地體會(huì)到了其中的奧妙,圖
88、能夠在計(jì)算機(jī)中存在,首先要捕捉他有哪些具體化、數(shù)字化的信息,比如說(shuō)權(quán)值、頂點(diǎn)個(gè)數(shù)等,這也就說(shuō)明了想要把生活中的信息轉(zhuǎn)化到計(jì)算機(jī)中必須用數(shù)字來(lái)完整的構(gòu)成一個(gè)信息庫(kù),而圖的存在,又涉及到了頂點(diǎn)之間的聯(lián)系。圖分為有向圖和無(wú)向圖,而無(wú)向圖又是有向圖在權(quán)值雙向相等下的一種特例,如何能在計(jì)算機(jī)中表示一個(gè)雙向權(quán)值不同的圖,這就是一件很巧妙的事情,經(jīng)過(guò)了思考和老師同學(xué)的幫助,我用edges[i][j]=up和edges[j][i]=up就能實(shí)現(xiàn)了一個(gè)雙
89、向圖信息的存儲(chǔ)。 對(duì)整個(gè)程序而言,Dijkstra算法始終都是核心內(nèi)容,其實(shí)這個(gè)算法在實(shí)際思考中并不難,也許我們誰(shuí)都知道找一個(gè)路徑最短的方法,及從頂點(diǎn)一步一步找最近的路線并與其直接距離相比較,但是,在計(jì)算機(jī)中實(shí)現(xiàn)這么一個(gè)很簡(jiǎn)單的想法就需要涉及到很多專業(yè)知識(shí),為了完成設(shè)計(jì),在前期工作中,基本都是以學(xué)習(xí)C語(yǔ)言為主,所以浪費(fèi)了很多時(shí)間,比如說(shuō)在程序中,刪除頂點(diǎn)和增加頂點(diǎn)的模塊中都有和建</p>&
90、lt;p><b> 參考文獻(xiàn)</b></p><p> [1]數(shù)據(jù)結(jié)構(gòu)實(shí)用教程第二版 (徐孝凱 著) [M].清華大學(xué)出版社,2010.8</p><p> [2]潘彥.算法設(shè)計(jì)與分析基礎(chǔ)[M].北京:清華大學(xué)出版社,2007.1</p><p> [3]呂鳳翥.C++語(yǔ)言程序設(shè)計(jì)(第2版).電子工業(yè)出版社,2007.2</
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 校園導(dǎo)游咨詢系統(tǒng)-數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
- 校園導(dǎo)游咨詢系統(tǒng)---數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)——校園導(dǎo)游咨詢系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--校園導(dǎo)游咨詢
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)-校園導(dǎo)游咨詢
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--校園導(dǎo)游咨詢
- 校園導(dǎo)游咨詢系統(tǒng)-中南大學(xué)數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)校園導(dǎo)游咨詢課程設(shè)計(jì)報(bào)告
- 校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)報(bào)告
- 校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)報(bào)告
- 校園導(dǎo)游課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)--校園導(dǎo)游的咨詢程序
- c++校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)
- c語(yǔ)言校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)
- 校園導(dǎo)游系統(tǒng)程序__課程設(shè)計(jì)_報(bào)告
- 數(shù)據(jù)結(jié)構(gòu)_校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)---校園導(dǎo)游系統(tǒng)
- 數(shù)據(jù)結(jié)構(gòu) 校園導(dǎo)游系統(tǒng)課程設(shè)計(jì)
- 數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì)---校園導(dǎo)游系統(tǒng)設(shè)計(jì)
- 校園導(dǎo)游系統(tǒng)程序課程設(shè)計(jì)匯本報(bào)告
評(píng)論
0/150
提交評(píng)論