版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、<p><b> 程序課程設計報告</b></p><p><b> 名稱:航班管理系統(tǒng)</b></p><p><b> 系統(tǒng)簡介</b></p><p> 航班查詢的業(yè)務流程:當顧客到達營業(yè)網點后向航空公司營業(yè)員提供出發(fā)地,目的地和出發(fā)日期,營業(yè)員根據以上信息,操作軟件查詢滿足條
2、件的航班。</p><p> 購票的業(yè)務流程:在查詢出航班信息的基礎上,根據顧客的要求選擇某個航班,輸入乘客信息,以及艙位信息,然后等待顧客確認,并收取票款,然后執(zhí)行出票操作。</p><p> 退票的業(yè)務流程:根據顧客提供的機票號(和)證件號碼,查詢出該機票的信息,然后根據該機票的退改簽規(guī)定收取一定手續(xù)費,將剩余票款退還給顧客,并將機票收回(如果有紙質機票的話)。</p>
3、<p> 該系統(tǒng)要求能進行航班管理,航班管理員能添加和刪除航班計劃,還能臨時修改航班計劃,對航班計劃的修改包括臨時添加航班。除此之外,航班管理員還能隨時更新每天的航班季節(jié)折扣。</p><p> 該系統(tǒng)要求能進行用戶賬戶的管理,系統(tǒng)管理員可以添加新帳戶,刪除或屏蔽現有賬戶,或設置某個賬戶的密碼清空。</p><p> 該系統(tǒng)要求能進行用戶權限的管理,系統(tǒng)管理員能為每一個
4、用戶帳號賦予權限或刪除權限。所有可能的權限類型預先定義,在程序運行中不能加入新的權限類型。</p><p><b> 功能概述:</b></p><p> 系統(tǒng)功能模塊分為以下幾部分:前臺營業(yè),后臺管理,后臺服務。</p><p><b> 前臺營業(yè)</b></p><p> 1.用戶登錄/
5、登出</p><p><b> 1.1登錄</b></p><p><b> 1.2修改賬戶密碼</b></p><p><b> 2.售票</b></p><p><b> 2.1 查詢航班</b></p><p>&l
6、t;b> 2.2 購票</b></p><p><b> 3. 退票</b></p><p><b> 3.1 退票</b></p><p><b> 4. 查詢航班</b></p><p><b> 4.1 查詢航班</b>&
7、lt;/p><p><b> 5. 瀏覽航班</b></p><p><b> 5.1瀏覽航班</b></p><p><b> 6. 瀏覽乘客</b></p><p><b> 6.1 按航班瀏覽</b></p><p>&l
8、t;b> 6.2 按日期瀏覽</b></p><p> 6.3 按航班日期瀏覽</p><p><b> 6.4 全部瀏覽</b></p><p><b> 后臺管理:</b></p><p><b> 7.航班計劃管理</b></p>
9、<p> 7.1 查詢航班計劃</p><p> 7.2 添加航班計劃</p><p> 7.3 刪除航班計劃</p><p> 7.4 修改航班計劃(起飛時間,到達時間,基準票價)</p><p> 7.4 瀏覽航班計劃</p><p><b> 8. 賬戶管理</b>&
10、lt;/p><p> 8.1 添加用戶賬戶</p><p> 8.2 刪除用戶賬戶</p><p> 8.3 修改用戶信息</p><p> 8.4 查詢用戶信息</p><p> 8.5 瀏覽用戶信息</p><p><b> 后臺服務:</b></p>
11、;<p> 9.航班表和航班記錄表的維護</p><p> 9.1 處理過期航班數據</p><p> 9.2 處理過期航班計劃數據</p><p><b> 數據字典:</b></p><p> 可用座位公里:飛行公里乘以可出售座位數量。</p><p> 收費客公里:
12、飛行公里乘以收費旅客數量。</p><p> 客座率:以收費客公里除以可用座位公里所得的百分比。</p><p> 航線(Airline):描述兩個機場間有直達航班的線路,航線包含的數據有:出發(fā)地機場,目的地機場,里程。</p><p> 航班計劃(Flight Scheduler):用來描述TOLO航空公司執(zhí)行的某個定期航班的計劃表。例如:由TOLO航空公司
13、執(zhí)行的每天早上8:00從北京起飛,上午10:00到達上海的TL1202就是一個航班計劃。根據中國民航相關管理部門的規(guī)定,TOLO航空公司可以在每一季度前一個月提交下一季度的航班計劃申請,由民航管理部門核準后執(zhí)行。在一個季度的執(zhí)行過程中,TOLO航空公司不得隨意改變航班計劃。如有特殊情況需臨時改變航班計劃,可由TOLO航空公司提出申請,由民航管理部門審核通過后執(zhí)行更改。</p><p> 航班計劃包含的信息:航班
14、號,起始日期,結束日期,執(zhí)行航線,離港時間,到港時間,飛機機型,班期,基準票價。</p><p> 航班(Flight):用來描述在某個確定日期執(zhí)行某個定期航班計劃的一次航班。例如:2009年12月25日從北京飛上海的TL1202就是一個航班的實例。</p><p> 航班包含的信息:執(zhí)行的航班計劃,出發(fā)日期,各艙剩余座位數,季節(jié)折扣。</p><p> 航班
15、計劃的起始日期(Start Date):用來描述某個航班計劃開始的日期,該日期精確到天。</p><p> 航班計劃的結束日期(End Date):用來描述某個航班計劃結束的日期,該日期精確到天。</p><p> 營業(yè)員(Sales):用來描述在營業(yè)網點操作營業(yè)柜員系統(tǒng)的操作人員,每個營業(yè)員必須憑帳號和密碼登錄系統(tǒng)后才能為顧客提供服務。</p><p> 營
16、業(yè)員包含的信息:營業(yè)員編號,營業(yè)員帳號,密碼,所屬營業(yè)網點編號。</p><p> 航班號(Flight Number):由航空公司給航班計劃定義的唯一標識號碼,該號碼由2位英文字符和3_5位數字組成,2位英文字符是航空公司編碼,3_5位數字是航班編碼, TOLO航空公司的編碼為:TL。例如:TL1202就是一個航班計劃的航班號,其中TL代表TOLO航空公司,1202代表航班的編號。</p>&l
17、t;p> 出發(fā)地(From City):用來描述某個航班計劃的起飛城市和機場,所有國內機場均用三個英文字母的代碼表示,詳情請見附錄I(國內機場代碼表)。</p><p> 目的地(To City):用來描述某個航班計劃的到達城市和機場,所有國內機場均用三個英文字母的代碼表示,詳情請見附錄I(國內機場代碼表)。</p><p> 離港時間:(Departure):用來描述某個航班
18、計劃的從出發(fā)地機場離開的時刻,離港時間一般代表飛機艙門關閉,不再接收乘客的時刻。該時間精確到分鐘。</p><p> 到港時間:(Arrival):用來描述某個航班計劃到達目的地機場的時間,到港時間一般代表飛機艙門開啟,允許乘客下飛機的時刻,該時間精確到分鐘。</p><p> 出發(fā)日期(Date):用來描述某個航班的出發(fā)日期,該日期精確到某一天。</p><p&g
19、t; 班期(Scheduler):用來描述某個航班計劃在一周之內哪些天有航班,哪些天沒有航班。</p><p> 艙位等級:(Cabin Class):用來描述航班的不同艙位,一般分為三種:頭等艙(F),公物艙(C),經濟艙(Y)。不同的艙位等級具有不同的機票折扣,詳情請參見艙位折扣和機票價格。</p><p> **實際情況中航空公司定義的艙位等級可能更復雜,在本項目中為簡化業(yè)務模
20、型,只對艙位等級作上述三種劃分。</p><p> 乘客類型:(Passenger type):用來描述乘坐航班的乘客的類型,一般分為三種:成人(A)(age>12),兒童(C)(2<age<=12),嬰兒(I)(0<=age<=2)。不同的乘客類型具有不同的機票折扣,詳情請見乘客折扣。在這三種乘客類型中,成人和兒童占用座位,而嬰兒不占用座位,嬰兒票不能單獨出售,一張嬰兒票必須憑一
21、張成人票售出。</p><p> 飛機機型:(Airplane Model):用來描述執(zhí)行某個航班計劃的飛機的型號,一般來講,一個航班計劃的各次航班都應該采用同種機型的飛機來執(zhí)行。不同的飛機型號有不同的航程及各艙座位數。詳情請參見附錄II民航飛機型號一覽表。</p><p> **實際情況中,各種機型的座位數是不一樣的,同一機型還分好幾個系列,如B737(波音737)有B737_200
22、、B737_300....B737_900等多個系列,每個系列座位數都不一樣。即使是同一型號、同一系列的機型,所屬的航空公司不同,座位數也會不同,因為航空公司在購買飛機時,會根據自己的需要要求廠家采用不同的布局,不同的布局會有不同的頭等艙、公務艙、經濟艙座位數。在本項目中為簡化業(yè)務模型,我們認為同種型號的飛機各艙座位數是固定的。</p><p> 基準票價:(Full Price):是指某個航班在沒有季節(jié)折扣時
23、的一張經濟艙成人票的價格,該價格作為該航班計劃的基準價格,最終機票價格應該在此基礎上乘以季節(jié)折扣,艙位折扣和乘客類型折扣?;鶞势眱r=[航班里程*0.75],對個位四舍五入,保留整十位,該票價是可修改的。</p><p> 季節(jié)折扣:(Season Discount):航空公司根據不同季節(jié)的客流狀況調整的航班的折扣,只有經濟艙的成人票才享受季節(jié)折扣。</p><p> 艙位折扣:(Cla
24、ss Discount):不同艙位在基準價格基礎上的價格系數,頭等艙為1.5,公務艙為1.3,經濟艙為1.0</p><p> 乘客類型折扣:(Passenger Discount):不同乘客類型在基準票價基礎上的價格系數,成人為1.0,兒童為0.5,嬰兒為0.1。</p><p> 機票(Ticket):一位乘客乘坐某次航班的確定的出票記錄</p><p>
25、 機票價格:(Ticket Price):一張機票的價格,機票價格由以下公式計算:</p><p> 經濟艙成人票票價=基準價格*季節(jié)折扣</p><p> 其他艙位乘客票價=基準價格*艙位折扣*乘客類型折扣</p><p> 燃油稅:國家統(tǒng)一征收的,由乘坐民航飛機的乘客負擔的一種稅收,計算辦法:800KM以內(含)的航程,每人稅費為60元,800KM以上的航
26、程每人稅費為100元,兒童票減半收取,嬰兒票免收燃油稅。燃油稅的征收不區(qū)分乘客艙位。該項稅費捆綁在機票上由航空公司代收代繳。燃油稅的收取額度和征收辦法取決于國家相關部門的政策,該政策可能隨時調整?!緟⒖嘉臋n2】</p><p> 機場建設費:國家統(tǒng)一收取的,由乘坐民航飛機的乘客負擔的一種收費項目,用于支援民航機場的建設。收取辦法:乘坐70座以下(含)的小飛機,每人每次收取10元;乘坐70座以上的大飛機,每人每次
27、收取50元。兒童和嬰兒都不收取機場建設費。機場建設費的征收不區(qū)分乘客艙位。該項收費捆綁在機票上由航空公司代收代繳。機場建設費的收取額度和征收辦法取決于國家相關部門的政策,該政策可能隨時調整?!緟⒖嘉臋n2】</p><p> 機票應收款:一張機票的應收款=機票價格+燃油稅+機場建設費。</p><p><b> 系統(tǒng)用例</b></p><p&g
28、t;<b> 1、用例描述</b></p><p><b> 概述:</b></p><p><b> 詳細描述:</b></p><p> 四、主要的數據結構設計</p><p> 1、航班計劃表:flight</p><p> 2、用戶表
29、:user</p><p> 3、乘客:passenger</p><p><b> 總結</b></p><p> 首先,我在本次課程設計開發(fā)過程中,充分理解了擁有吃苦耐勞的品質對我們是多么的重要,不管做任何事,它的地位是不可忽視的。</p><p> 其次,在課程設計的開發(fā)中,我認識到了前期開發(fā)所作的工作的重
30、要性,在以后的開發(fā)中一定要做好前期的工作。前期工作沒有多好,整個設計開發(fā)就等于失敗。</p><p> 最后,我明白了有關模塊化程序設計的要點:</p><p> 模塊與模塊之間的耦合性要低;</p><p> 模塊的劃分要盡量的細;</p><p> 模塊的邊界要分明,不能模糊;</p><p> 總之,要
31、想做好課程設計,必須保持高度清晰的頭腦,要想做好這一點,至關重要的一點就是做好開發(fā)文檔,并不斷完善之。</p><p><b> C程序代碼</b></p><p> /************************************************************ </p>&
32、lt;p><b> 航空管理系統(tǒng)</b></p><p><b> 作者:羅樹英</b></p><p> 時間:2011年05月04日 </p><p> ********************************************************
33、*****/</p><p> #include<stdio.h></p><p> #include<string.h></p><p> #include<stdlib.h></p><p> #include <conio.h> </p><p> #in
34、clude<time.h></p><p> #define season_discount 0.9 /*季度折扣*/</p><p> typedef struct user/*用戶定義*/</p><p><b> {</b></p><p> char name[10];</p>
35、<p> int worknum;</p><p> int usernum;</p><p> char password[12];</p><p> int level;</p><p> struct user *next;</p><p> }user,*linkuser;</p&g
36、t;<p> typedef struct passenger/*乘客定義*/</p><p><b> {</b></p><p> char name[10];</p><p> char idcard[20];</p><p><b> int age;</b><
37、/p><p> char fnum[8];</p><p><b> int date;</b></p><p> char cabin;</p><p> int price;</p><p> int seatnum;</p><p> struct passe
38、nger *next;</p><p> }passenger,*linkpsger;</p><p> typedef struct flight /*航班定義*/</p><p><b> {</b></p><p> char flightnum[8];</p><p> char
39、 fcity[10];</p><p> char tcity[10];</p><p> int startdate;</p><p> int enddate;</p><p> char departure[6];</p><p> char arrival[6];</p><p&g
40、t;<b> int sche;</b></p><p> int mileage;</p><p> int num[367][3],max[3];</p><p> struct passenger *psger[367];</p><p> struct flight *next;</p>
41、<p> }flight,*linkflight;</p><p> linkflight fhead;/*航班表頭*/</p><p> linkuser uhead;/*用戶表頭*/</p><p> linkuser nowuser;/*當前用戶*/</p><p> linkflight pre_f;</p&
42、gt;<p> linkuser pre_user;</p><p> int w,f=0;</p><p> char acter[4][12]={"營業(yè)員","航班管理員","系統(tǒng)管理員"}; </p><p> linkuser search_user(int);</p&g
43、t;<p> linkflight search();</p><p> int belong(int);</p><p> void save2();</p><p> void save1();</p><p> void print_user(linkuser);</p><p> vo
44、id menu1();</p><p> void menu2();</p><p> void menu3();</p><p> void menupass();</p><p> void loginmenu();</p><p> int daynum(int);</p><p&g
45、t; void scan_passenger();</p><p> void scan_user() /*瀏覽用戶信息模塊*/</p><p><b> {</b></p><p> linkuser u=uhead->next;</p><p> system( "cls
46、" ); </p><p> puts("\t\t\t\t歡迎查詢用戶信息!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("
47、\t\t*********************MENU*********************\n\n");</p><p> puts("\n\n\t\t用戶名 工號 密碼 等級 職位 員工數\n");</p><p><b> while(u) </b></p><p><b
48、> {</b></p><p> print_user(u);</p><p> u=u->next;</p><p><b> }</b></p><p> puts("\n\n\t\t*********************************************
49、*\n\n");</p><p> getchar();</p><p> getchar();</p><p><b> menu3();</b></p><p><b> }</b></p><p> void scan_flightsche()
50、 /*瀏覽航班計劃模塊*/</p><p><b> {</b></p><p> linkflight f=fhead->next;</p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎瀏覽航班計劃(航
51、班)!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n&quo
52、t;);</p><p> puts("\n 航號 起飛地 降落地 起飛時間 降落時間 班期 里程 起始日期 結束日期\n");</p><p><b> while(f)</b></p><p><b> {</b></p><p> printf
53、(" %-7s%-8s%-8s%-10s%-10s%-8d%-6d%-9d%d\n\n",f->flightnum,f->fcity,f->tcity,f->departure,f->arrival,f->sche,f->mileage,f->startdate,f->enddate);</p><p> f=f->next;&l
54、t;/p><p><b> }</b></p><p> puts("\n\n\t\t**********************************************\n\n");</p><p> getchar();</p><p> getchar();</p>&
55、lt;p><b> }</b></p><p> linkuser search2() /*查找模塊2*/</p><p><b> {</b></p><p> linkuser u;</p><p> int num,choice;</p&g
56、t;<p><b> do</b></p><p><b> {</b></p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎查詢用戶!\n\n");</p><p> printf
57、("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");</p><p> printf("\t\t
58、\t請輸入工號:");</p><p> scanf("%d",&num);</p><p> u=search_user(num);</p><p><b> if(u)</b></p><p><b> { </b></p><p
59、> puts("\n\n\t\t用戶名 工號 密碼 等級 職位 員工數\n");</p><p> print_user(u);</p><p><b> }</b></p><p> else printf("\n\t\t該員工不存在!");</p>&l
60、t;p> puts("\n\t\t\t\t 1.繼續(xù)查詢");</p><p> puts("\n\t\t\t\t 0.返回");</p><p> printf("\n\t\tChoice your number(0-1): [ ]\b\b");</p><p> scanf("%
61、d",&choice);</p><p> if(choice==0.) return u;</p><p> }while(1);</p><p><b> }</b></p><p> void print_user(linkuser u) /*打印用戶信息模塊*/<
62、;/p><p><b> {</b></p><p> printf("\t\t%-12s%-5d%-13s%-6d%-12s%d\n",u->name,u->worknum,u->password,u->level,acter[u->level-1],nowuser->usernum);</p>
63、<p><b> }</b></p><p> int getwnum()</p><p><b> {</b></p><p> return (uhead->next->worknum)+1;</p><p><b> }</b></p
64、><p> void adduser() /*添加用戶模塊*/</p><p><b> {</b></p><p> linkuser u;</p><p> u=(linkuser)malloc(sizeof(user));</p><p> syst
65、em( "cls" ); </p><p> puts("\t\t\t\t 歡迎添加新用戶!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p>
66、 puts("\t\t*********************MENU*********************\n\n");</p><p> printf("\t\t請輸入名字:");</p><p> scanf("%s",u->name);</p><p> printf("
67、;\n\t\t請輸入級別:");</p><p> scanf("%d",&(u->level));</p><p> u->worknum=getwnum();</p><p> (nowuser->usernum)++;</p><p> strcpy(u->passw
68、ord,"123456");</p><p> u->next=uhead->next;</p><p> uhead->next=u;</p><p> puts("\n\n\t\t用戶名 工號 密碼 等級 職位 員工數\n");</p><p>
69、 print_user(u);</p><p> puts("\n\n\t\t**********************************************\n\n");</p><p> printf("\n\n\t\t\t新用戶添加成功!");</p><p> getchar();</p>
70、;<p> getchar();</p><p><b> menu3();</b></p><p><b> }</b></p><p> void deluser() /*刪除用戶模塊*/</p><p><b>
71、{</b></p><p> linkuser u;</p><p> u=search2();</p><p> getchar();</p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎刪除用戶!\n\n&qu
72、ot;);</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");</p
73、><p><b> if(u)</b></p><p><b> { </b></p><p> puts("\n\n\t\t用戶名 工號 密碼 等級 職位 員工數\n");</p><p> print_user(u);</p><p&
74、gt; printf("\n\t\t按enter鍵確認刪除,其它則返回:");</p><p> if(getchar()=='\n')</p><p><b> {</b></p><p> pre_user->next=u->next;</p><p> (n
75、owuser->usernum)--;</p><p><b> free(u);</b></p><p> printf("\n\n\t\t\t用戶刪除成功!");</p><p><b> }</b></p><p><b> }</b>&
76、lt;/p><p> puts("\n\n\t\t**********************************************\n\n");</p><p> getchar();</p><p> getchar();</p><p><b> menu3();</b></
77、p><p><b> }</b></p><p> void modifyuser() /*修改用戶信息模塊*/</p><p><b> {</b></p><p> linkuser u;</p><p> int num,choice;<
78、/p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎修改用戶信息!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->nam
79、e);</p><p> puts("\t\t*********************MENU*********************\n\n");</p><p> printf("\t\t\t請輸入工號:");</p><p> scanf("%d",&num);</p>
80、<p> u=search_user(num);</p><p> puts("\n\n\t\t用戶名 工號 密碼 等級 職位 員工數\n");</p><p> print_user(u);</p><p><b> if(u)</b></p><p>&l
81、t;b> {</b></p><p> puts("\n\t\t\t\t1.修改用戶名");</p><p> puts("\n\t\t\t\t2.修改密碼");</p><p> puts("\n\t\t\t\t3.修改等級");</p><p> pu
82、ts("\n\t\t\t\t0.返回主菜單并保存");</p><p><b> do</b></p><p><b> {</b></p><p> printf("\n\t\tChoice your number(0-3): [ ]\b\b");</p>&l
83、t;p> scanf("%d",&choice);</p><p> switch(choice)</p><p><b> {</b></p><p> case 1:printf("\n\t\t請輸入新用戶名:");scanf("%s",u->name)
84、;break;</p><p> case 2:printf("\n\t\t請輸入新密碼:");scanf("%s",u->password);break;</p><p> case 3:printf("\n\t\t請輸入新等級:");scanf("%d",&(u->level));b
85、reak;</p><p> case 0:save2();menu3();</p><p> default:printf("\n\t\t\t輸入錯誤!");</p><p><b> }</b></p><p> }while(1);</p><p><b&g
86、t; }</b></p><p> else printf("\n\t\t\t\t該用戶不存在!");</p><p> puts("\n\n\t\t**********************************************\n\n");</p><p> getchar();</p
87、><p> getchar();</p><p><b> menu3();</b></p><p><b> }</b></p><p> void modifyflightsche() /*修改航班計劃模塊*/</p><p><b>
88、; {</b></p><p> linkflight f;</p><p> int choice;</p><p> f=search();</p><p> system( "cls" ); </p><p> puts("\t\t\t\t歡迎修改航班計劃!\
89、n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");
90、</p><p> puts("\n 航號 起飛地 降落地 起飛時間 降落時間 班期 里程 起始日期 結束日期\n");</p><p> printf(" %-7s%-8s%-8s%-10s%-10s%-8d%-6d%-9d%d\n\n",f->flightnum,f->fcity,f->tcity,f
91、->departure,f->arrival,f->sche,f->mileage,f->startdate,f->enddate);</p><p> puts("\n\t\t\t\t1.修改航班代號");</p><p> puts("\n\t\t\t\t2.修改開始日期");</p><
92、;p> puts("\n\t\t\t\t3.修改結束日期");</p><p> puts("\n\t\t\t\t4.修改起飛時間");</p><p> puts("\n\t\t\t\t5.修改降落時間");</p><p> puts("\n\t\t\t\t6.修改起飛地點&qu
93、ot;);</p><p> puts("\n\t\t\t\t7.修改降落地點");</p><p> puts("\n\t\t\t\t8.修改班期");</p><p> puts("\n\t\t\t\t9.修改里程");</p><p> puts("\n\t\
94、t\t\t0.返回主菜單并保存");</p><p><b> do</b></p><p><b> {</b></p><p> printf("\n\t\tChoice your number(1-10): [ ]\b\b");</p><p> scan
95、f("%d",&choice);</p><p> switch(choice)</p><p><b> {</b></p><p> case 1:printf("\n\t\t請輸入新航班代號:");scanf("%s",f->flightnum);break;
96、</p><p> case 2:printf("\n\t\t請輸入新開始日期:");scanf("%s",f->startdate);break;</p><p> case 3:printf("\n\t\t請輸入新結束日期:");scanf("%s",f->enddate);break;&l
97、t;/p><p> case 4:printf("\n\t\t請輸入新起飛時間:");scanf("%s",f->departure);break;</p><p> case 5:printf("\n\t\t請輸入新降落時間:");scanf("%s",f->arrival);break;<
98、/p><p> case 6:printf("\n\t\t請輸入新起飛地點:");scanf("%s",f->fcity);break;</p><p> case 7:printf("\n\t\t請輸入新降落地點:");scanf("%s",f->tcity);break;</p>
99、<p> case 8:printf("\n\t\t請輸入新班期:");scanf("%d",&(f->sche));break;</p><p> case 9:printf("\n\t\t請輸入新里程:");scanf("%d",&(f->mileage));break;</p>
100、;<p> case 0:save2();menu2();</p><p> default:printf("\n\t\t\t輸入錯誤!");</p><p><b> }</b></p><p> }while(1);</p><p> puts("\n\n\t\t
101、**********************************************\n\n");</p><p><b> }</b></p><p> void addflightsche() /*添加航班計劃模塊*/</p><p><b> {</b></p>&
102、lt;p> linkflight f;</p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎添加航班計劃!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser-
103、>level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");</p><p> f=(linkflight)malloc(sizeof(flight));</p><p> printf(&qu
104、ot;\t\t\t請輸入航班代號:");</p><p> scanf("%s",f->flightnum);</p><p> printf("\t\t\t請輸入起始日期:");</p><p> scanf("%d",&(f->startdate));</p&g
105、t;<p> printf("\t\t\t請輸入結束日期:");</p><p> scanf("%d",&(f->enddate));</p><p> printf("\t\t\t請輸入起飛地點:");</p><p> scanf("%s",f-
106、>fcity);</p><p> printf("\t\t\t請輸入降落地點:");</p><p> scanf("%s",f->tcity);</p><p> printf("\t\t\t請輸入起飛時間:");</p><p> scanf("%
107、s",f->departure);</p><p> printf("\t\t\t請輸入降落時間:");</p><p> scanf("%s",f->arrival);</p><p> printf("\t\t\t請輸入班期:");</p><p>
108、 scanf("%d",&(f->sche));</p><p> printf("\t\t\t請輸入里程:");</p><p> scanf("%d",&(f->mileage));</p><p> printf("\t\t\t請分別輸入FCY艙最大載客量:
109、");</p><p> scanf("%d%d%d",&(f->max[0]),&(f->max[1]),&(f->max[2]));</p><p> puts("\n\n\t\t**********************************************\n\n");<
110、;/p><p> printf("\t\t\t航班計劃添加成功!");</p><p> for(int i=0;i<367;i++)</p><p><b> {</b></p><p> f->num[i][0]=0;</p><p> f->num
111、[i][1]=0;</p><p> f->num[i][2]=0;</p><p><b> }</b></p><p> f->next=fhead->next;;</p><p> fhead->next=f;</p><p> getchar();<
112、;/p><p> getchar();</p><p><b> menu2();</b></p><p><b> }</b></p><p> void delflightsche() /*刪除航班計劃模塊*/</p><p><b> {</
113、b></p><p> linkflight f;</p><p> f=search();</p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎刪除航班計劃!\n\n");</p><p> printf(
114、"\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");</p><p> pre_f->next=f-&
115、gt;next;</p><p> printf("\n\n\n\t\t該航班計劃已刪除!\n\n\n");</p><p> puts("\n\n\t\t**********************************************\n\n"); </p><p><b> free(f);&l
116、t;/b></p><p> getchar();</p><p> getchar();</p><p><b> menu2();</b></p><p><b> }</b></p><p> void scanby(int n)</p>
117、<p><b> {</b></p><p> char fnum[8];</p><p> int date,choice,i,j,k;</p><p> linkflight f=fhead;</p><p> linkpsger p;</p><p> system(
118、"cls" ); </p><p> puts("\t\t\t\t 歡迎瀏覽乘客!\n\n");</p><p> printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> pu
119、ts("\t\t*********************MENU*********************\n");</p><p> if(n==1||n==3)</p><p><b> {</b></p><p> printf("\t\t\t請輸入航班號:");</p>&l
120、t;p> scanf("%s",fnum);</p><p><b> }</b></p><p> if(n==2||n==3)</p><p><b> {</b></p><p> printf("\t\t\t請輸入日期:");<
121、/p><p> scanf("%d",&date);</p><p> date=daynum(date);</p><p><b> }</b></p><p><b> k=0;</b></p><p> puts("\n\n\
122、n\t 航號 起飛地 降落地 起飛時間 降落時間 班期 里程 分別剩FCY票數");</p><p> while(f->next)</p><p><b> {</b></p><p> f=f->next;</p><p> if(n==1||n==3)</p
123、><p> if(strcmp(fnum,f->flightnum))continue;</p><p> for(i=1;i<367;i++)</p><p><b> {</b></p><p> if(n==2||n==3)</p><p> if(i!=date) con
124、tinue;</p><p> p=f->psger[i]->next;</p><p><b> if(p)</b></p><p><b> {</b></p><p> printf("\n\n\t%d.",++k);</p><p&
125、gt; printf("%-6s%-9s%-9s%-10s%-10s%-8d%-6d%-4d%-4d%d\n\n",f->flightnum,f->fcity,f->tcity,f->departure,f->arrival,f->sche,f->mileage,f->max[0]-f->num[i][0],f->max[1]-f->num[i][1
126、],f->max[2]-f->num[i][2]);</p><p><b> }</b></p><p><b> j=0;</b></p><p><b> while(p)</b></p><p><b> {</b></p
127、><p> printf(" \t第%d位:\n",++j);</p><p> printf("\t\t乘客姓名:%-8s身份證:%-20s\n\t\t年齡:%-4d艙位等級:%-3c座位號:%-3d票價:%-5d¥日期:%d\n",p->name,p->idcard,p->age,p->cabin,p->seatnu
128、m,p->price,p->date);</p><p> p=p->next;</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> if(!k)
129、printf("\n\n\t\t\t不存在您所要求的航班!\n\n");</p><p> puts("\n\n\t\t\t\t1.返回上一級");</p><p> puts("\t\t\t\t0.返回主目錄");</p><p> puts("\n\n\t\t**************
130、********************************\n"); </p><p><b> do</b></p><p><b> {</b></p><p> printf("\n\t\tChoice your number(0-1): [ ]\b\b");</p&g
131、t;<p> scanf("%d",&choice);</p><p> switch(choice)</p><p><b> {</b></p><p> case 1:scan_passenger();break;</p><p> case 0:menu1();
132、</p><p> default:printf("\n\t\t\t輸入錯誤!");</p><p><b> }</b></p><p> }while(1);</p><p><b> }</b></p><p> void scan_pas
133、senger()</p><p><b> {</b></p><p> int choice;</p><p> system( "cls" ); </p><p> puts("\t\t\t\t 歡迎瀏覽乘客!\n\n");</p><p>
134、 printf("\t\t\t\t\t活動者:%s 用戶:%s\n",acter[nowuser->level-1],nowuser->name);</p><p> puts("\t\t*********************MENU*********************\n\n");</p><p> puts("
135、;\t\t\t\t1.按航班瀏覽");</p><p> puts("\t\t\t\t2.按日期瀏覽");</p><p> puts("\t\t\t\t3.按航班日期瀏覽");</p><p> puts("\t\t\t\t4.全部瀏覽");</p><p> p
136、uts("\t\t\t\t0.返回主目錄");</p><p> puts("\n\n\t\t**********************************************\n\n"); </p><p><b> do</b></p><p><b> {</b>
137、;</p><p> printf("\n\t\tChoice your number(0-4): [ ]\b\b");</p><p> scanf("%d",&choice);</p><p> switch(choice)</p><p><b> {</b>
138、</p><p> case 1:scanby(1);break;</p><p> case 2:scanby(2);break;</p><p> case 3:scanby(3);break;</p><p> case 4:scanby(4);break;</p><p> case 0:menu1(
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- c語言航班售票系統(tǒng)課程設計報告----航班售票系統(tǒng)
- 數據結構課程設計--航班管理系統(tǒng)
- vfp課程設計--飛機航班查詢系統(tǒng)
- 《數據結構課程設計》航班查詢系統(tǒng)實驗報告
- c語言程序設計課程設計報告—宿舍管理系統(tǒng)
- 校園導游系統(tǒng)程序__課程設計_報告
- c語言程序課程設計報告-圖書銷售管理系統(tǒng)
- 成績管理系統(tǒng)c++課程設計程序報告
- 程序課程設計報告 圖書信息管理系統(tǒng)
- 課程設計報告--系統(tǒng)時間程序設計
- 航班售票系統(tǒng)-數據結構課程設計
- 程序課程設計-圖書管理系統(tǒng)
- 高級程序設計課程設計報告—學生信息管理系統(tǒng)
- vb程序設計課程設計報告學生成績管理系統(tǒng)
- 停車場管理系統(tǒng)-面向對象程序課程設計報告
- vb程序設計課程設計報告-學生成績管理系統(tǒng)
- vb程序設計課程設計報告學生成績管理系統(tǒng)
- c++程序課程設計報告—學生成績管理系統(tǒng)
- 操作系統(tǒng)程序調度課程設計報告
- 航班信息查詢 課程設計
評論
0/150
提交評論