校園導(dǎo)游咨詢系統(tǒng)課程設(shè)計(jì)_第1頁(yè)
已閱讀1頁(yè),還剩26頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論