軟件課程-設(shè)計(jì)報(bào)告_第1頁(yè)
軟件課程-設(shè)計(jì)報(bào)告_第2頁(yè)
軟件課程-設(shè)計(jì)報(bào)告_第3頁(yè)
軟件課程-設(shè)計(jì)報(bào)告_第4頁(yè)
軟件課程-設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩35頁(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、 TOC o 1-5 h z 1軟件設(shè)計(jì)31 . 1設(shè)計(jì)題目31.2設(shè)計(jì)思想3 HYPERLINK l bookmark9 o Current Document . 3功能劃分3 HYPERLINK l bookmark23 o Current Document 1.4程序流程圖5軟件測(cè)試10 HYPERLINK l bookmark26 o Current Document 2.1瀏覽航班信息模塊測(cè)試10 HYPERLINK l bookmark30 o Current Document 2.2創(chuàng)建航班信息模塊測(cè)試11 HYPERLINK l bookmark33 o Current Doc

2、ument 2.3航班信息查詢模塊測(cè)試11 HYPERLINK l bookmark39 o Current Document 2.4乘客信息查詢模塊測(cè)試13 HYPERLINK l bookmark42 o Current Document 2.5機(jī)票購(gòu)買模塊測(cè)試15 HYPERLINK l bookmark45 o Current Document 2.6退票模塊測(cè)試17 HYPERLINK l bookmark54 o Current Document 開(kāi)發(fā)體會(huì)22 HYPERLINK l bookmark70 o Current Document 附錄:源代碼清單2 4參考文南犬351

3、、軟件設(shè)計(jì)1.1設(shè)計(jì)題目飛機(jī)票銷售系統(tǒng)1.2設(shè)計(jì)思想設(shè)計(jì)一個(gè)飛機(jī)票銷售系統(tǒng),所設(shè)計(jì)的系統(tǒng)分為六個(gè)模塊,分別 為創(chuàng)建航班信息、瀏覽航班信息、航班信息查詢、機(jī)票購(gòu)買、機(jī)票信 息查詢和機(jī)票退購(gòu)六個(gè)基本模塊程序中定義了兩個(gè)結(jié)構(gòu)體airfight 和pessinform,分別用于航班信息和乘客信息的存取和修改。程序 中有兩個(gè)文件“inf_fl.txt”和“inf_cl.txt”,用于存取航班信息 和乘客信息。通過(guò)子函數(shù)完成每個(gè)模塊的功能,并將信息存儲(chǔ)在文件 中。將所設(shè)計(jì)的系統(tǒng)分為兩個(gè)子系統(tǒng):1、航班管理系統(tǒng);2、飛機(jī)票 銷售系統(tǒng)。航班管理系統(tǒng)提供航班信息建立和瀏覽的服務(wù)。機(jī)票銷售 系統(tǒng)提供四個(gè)服務(wù),訂票

4、、退票、航班信息查詢、乘客信息查詢。每 個(gè)模塊通過(guò)子函數(shù)是實(shí)現(xiàn)。程序中使用的查找數(shù)據(jù)方式為順序查找。1.3功能劃分程序的模塊組成及功能: 主函數(shù)main()打開(kāi)文件函數(shù):打開(kāi)航班信息open_fl()打開(kāi)乘客信息open_cl()存儲(chǔ)文件函數(shù):存儲(chǔ)航班信息save_fl()存儲(chǔ)乘客信息save_cl()菜單顯示函數(shù):歡迎界面函數(shù)welcome()航班管理manage_sys()飛機(jī)票銷售系統(tǒng)sold_sys()航班管理系統(tǒng)創(chuàng)建航班信息函數(shù):creat_fl ()瀏覽航班信息函數(shù):scan_fl ()機(jī)票銷售系統(tǒng)信息查詢函數(shù):search_fl ()航班信息查詢函數(shù)search_client(乘

5、客信息查詢函數(shù)購(gòu)票函數(shù) perchase_cl()退票函數(shù) ticket_back()1.4程序流程圖主函數(shù)流程圖航班信息查詢函數(shù)search_fl ()流程圖2軟件測(cè)試2.1瀏覽航班信息模塊測(cè)試運(yùn)行程序,進(jìn)入歡迎界面選擇1,進(jìn)入航班管理系統(tǒng),繼續(xù)選擇2,進(jìn)入瀏覽航班信息顯示已經(jīng)存儲(chǔ)的十組航班信息:2.2創(chuàng)建航班信息模塊測(cè)試進(jìn)入航班管理系統(tǒng)后,選擇1,開(kāi)始輸入新的航班信息詢?cè)儎?wù)勞 查查服服 息息買購(gòu) 信信購(gòu)?fù)?班蓄票 航乘段 詢?cè)儎?wù)勞 查查服服 息息買購(gòu) 信信購(gòu)?fù)?班蓄票 航乘段 創(chuàng)建航班編號(hào)為BH1267,目的地changchun,起飛時(shí)間19:30,剩余 機(jī)票數(shù)15,最大載客數(shù)300的航班

6、。顯示航班信息創(chuàng)建完畢。2.3航班信息查詢模塊測(cè)試選擇2,進(jìn)入飛機(jī)票銷售系統(tǒng)乎 *F: 課件軟件課程設(shè)計(jì)飛機(jī)票Debugvork. exe*L進(jìn)入航踱置理鑫統(tǒng)L進(jìn)入飛機(jī)景銷舍系統(tǒng)E退出系統(tǒng)飛機(jī)票銷售系統(tǒng)請(qǐng)選擇沒(méi) .飛機(jī)票銷售系統(tǒng)請(qǐng)選擇:選擇1查詢航班信息,輸入目的地“shanghai”I-K進(jìn)入飛機(jī)祟銷售豺而 退出系統(tǒng)詢?cè)?查查服服 息息買購(gòu) 信信購(gòu)詛 班備票 航乘貴 L A 土 .生查詢航線請(qǐng)選擇T查詢航線請(qǐng)輸入目的弛:shanghai若有飛彳主shanghai的航班,顯示查詢結(jié)果查詢目的地“Changchun”的航班信息I?1飛機(jī)票銷售系統(tǒng)詢?cè)儎?wù)務(wù) 查查服服 息息買購(gòu) 信信購(gòu)?fù)?班蓄稟查詢

7、航線航班編號(hào)CA1000航班編號(hào)ZH1006ri-:目的地changchun字息:目的地changchun起飛時(shí)間起飛時(shí)間14:55剩余機(jī)票數(shù)11剩余機(jī)票數(shù)7最大載客數(shù)200最大載客數(shù)2002.4乘客信息查詢模塊測(cè)試進(jìn)入飛機(jī)票銷售系統(tǒng)后,選擇2,查詢乘客信息| m -F八課件軟件課程設(shè)計(jì)飛機(jī)票YDeIhI叭017虹EKEk:進(jìn)入航班篁理是統(tǒng)2,進(jìn)入飛料集銷售系統(tǒng)M退出系統(tǒng)詢?cè)儎?wù)務(wù) 查查服服 息息買購(gòu) 詢?cè)儎?wù)務(wù) 查查服服 息息買購(gòu) 信購(gòu)?fù)?班備票 航乘帆 心12.13.14.請(qǐng)選擇壯輸入查詢的航班號(hào),如“CA1002”若航班中有乘客,顯示結(jié)果一凝疝信皂一-:請(qǐng)輸入所要查詢的航班號(hào)Cfil002機(jī)

8、票編號(hào)航班編號(hào)目的地起飛時(shí)間姓名性別證件號(hào)碼B0801 CA1002vjuhan10:08liyemal票編號(hào)航班編號(hào)目的地起飛時(shí)間姓名性別證件號(hào)碼AB701 CA10B2vjuhan10:08i-jen zhangmal口 Xg *F八課件_軟件課程設(shè)計(jì)飛機(jī)票Debugvork. exe*查詢的航班號(hào)“CA1001”中的乘客信息:顯示此趟航班中所有乘客信息查詢乘客信息A1001加票編號(hào)航班編號(hào)BR902 CA1031機(jī)票編號(hào)航班編號(hào)A0903 CA1Q31機(jī)票編號(hào)航班編號(hào)BR904 CA1031 機(jī)票編號(hào)航班編號(hào)

9、 機(jī)票編號(hào)航班編號(hào)BS906 CA1031機(jī)票編號(hào)航班編號(hào)A0987 CA1031機(jī)票編號(hào)航班編號(hào)BR908 CA1Q31機(jī)票編號(hào)航班編號(hào)A090? CA1031機(jī)票編號(hào)航班編號(hào)J91010 CA1031 機(jī)票編號(hào)航班編號(hào) filBll CA1031目的弛guangzhou目的地guangzhou目的地guangzhou目的地guangzhou目的弛guangzhou目的弛guangzhou目的地guangzhou目的地guangzhou目的地guangzhou目的弛guangzhou起飛時(shí)間起飛時(shí)間起飛時(shí)間起飛時(shí)i司起飛時(shí)間起飛時(shí)間起飛時(shí)間起飛時(shí)間起飛時(shí)i司起飛時(shí)間n i n q- e o

10、n n i i 名ue名nl名ue名an名如名g名Ji名ue名如名ol 姓he姓su姓.貝姓Xi姓11姓那姓.g姓四姓眼姓費(fèi) i o weayx性別nale性別fenale隹別fenale怪別male性別female性別nale性別fenale性別fenale怪別emale性別female證件號(hào)碼4201061967K5231542證件號(hào)碼4201051987B2145454證件號(hào)件號(hào)碼42010619H7B2149816證件號(hào)碼4201061987B214H101證件號(hào)件號(hào)碼4201051987B214581S證

11、件號(hào)碼42010619V5B2145467證件號(hào)碼4201061967B2145454證件號(hào)碼4201061990821454012.5機(jī)票購(gòu)買模塊測(cè)試選擇3,進(jìn)入購(gòu)買機(jī)票服務(wù),顯示航班信息詢?cè)儎?wù)務(wù) 查查服服 息息買購(gòu) 信信購(gòu)?fù)?班簧票. 航乘畀購(gòu)買航班CA1002的機(jī)票:詢?cè)儎?wù)務(wù) 查查服服 息息買購(gòu) 信信購(gòu)?fù)?班簧票. 航乘畀購(gòu)買航班CA1002的機(jī)票:輸入航班編號(hào)CA1002,若這次航班中有剩余機(jī)票,則繼續(xù)輸入機(jī)票 編號(hào)。輸入乘客zhangyue的信息:輸入機(jī)票號(hào)A1515,乘客姓名zhangyue,性別female,證件號(hào)碼顯示購(gòu)票成功。返回主菜單

12、,進(jìn)入查詢航線服務(wù)輸入zhangyue購(gòu)買的機(jī)票的目的地“wuhan”,查詢航班信息。顯示編號(hào)為“CA1002”的航班剩余機(jī)票數(shù)由“4”減少為“3”。e H課件軟件課程設(shè)計(jì)飛機(jī)票DebugYvork. exe*查詢乘客信息請(qǐng)輸入所要查詢的航班號(hào):CA1002機(jī)票編號(hào)航班編號(hào)B0801 CA1002機(jī)票編號(hào)航班編號(hào)查詢乘客信息請(qǐng)輸入所要查詢的航班號(hào):CA1002機(jī)票編號(hào)航班編號(hào)B0801 CA1002機(jī)票編號(hào)航班編號(hào)A0701 CA1002機(jī)票編號(hào)航班編號(hào)A1515 CA1002技任意鍵返回主菜單!目的地i-juhan目的地i-juhan目的地i-juhan起飛時(shí)間起飛時(shí)間起飛時(shí)間ege 名iy

13、名即名W 姓1姓辦姓叫性別male性別male性別F enale證件號(hào)碼4201S561967(n283?64證件號(hào)碼4201i?61991(532Ji7872證件號(hào)碼4201H6197807228213查詢CA1002航班中乘客信息,有zhangyue的信息。表明購(gòu)票成功。2.6退票模塊測(cè)試選擇2,進(jìn)入機(jī)票銷售系統(tǒng)統(tǒng) 統(tǒng)系 理銷 X 如飛系 入入出 進(jìn)進(jìn)退12 3擇選hf詢?cè)儎?wù)務(wù)查查服服息息買購(gòu)信信購(gòu)?fù)税嘈罴氖竞匠祟瘬襁xhf選擇4,輸入退票的航班編號(hào)ZH1006調(diào)用乘客信息查詢函數(shù),顯示航班ZH1006的乘客信息輸入航班編號(hào);機(jī)票編號(hào)航班編號(hào)B3131 ZH1066機(jī)票編號(hào)航班編號(hào)A5454

14、 ZH1066機(jī)票編號(hào)航班編號(hào)H3S01 ZH1S66機(jī)票編號(hào)航班編號(hào)H3蜉甚N ZH1066機(jī)票編號(hào)航班編號(hào)計(jì)5453機(jī)票編號(hào)航班編號(hào)B3130 ZH1S66,查詢乘客信息 店號(hào):目的地起飛時(shí)間change Iiun14:55目的地起飛時(shí)間changehun14:55目的地起飛時(shí)間changehun14:55目的地起飛時(shí)間changehun14:55目的地起飛時(shí)間changehun14=55目的地起飛時(shí)間changehun14:55君tao名*名心名fei名nqi名tao 姓ai姓響姓孫姓舊姓he姓11 h h o Zz 1 ffnaw性別male性別male性別F emale性別male性

15、別F emale性別male證件號(hào)碼4201S6199103251324證件號(hào)碼4201819903251324證件號(hào)碼42018199187131324證件號(hào)件號(hào)碼4201S61991ia25101S證件號(hào)碼4201S6197703252325乘客majie退票:課件軟件課程設(shè)計(jì)、飛機(jī)票Debugvork. exe*清輸入慈鬲飪件號(hào)碼:4261061993032513241退票成功!按任意鍵返回主菜單I輸入乘客majie的證件號(hào)此次航班有此人,顯示退票成功。返回主菜單,進(jìn)入查詢航線服務(wù)查詢ZH1006的航班信息,

16、顯示剩余機(jī)票數(shù)由7”增加到“8”。g *H: 課件_軟件課程設(shè)計(jì)飛機(jī)票Debugvork. exe*官跑06機(jī)票編號(hào)航班編號(hào)B3131ZH1006機(jī)票編號(hào)航班編號(hào)B3001ZH1006機(jī)票編號(hào)航班編號(hào)B3002ZH1006機(jī)票編號(hào)航班編號(hào)官跑06機(jī)票編號(hào)航班編號(hào)B3131ZH1006機(jī)票編號(hào)航班編號(hào)B3001ZH1006機(jī)票編號(hào)航班編號(hào)B3002ZH1006機(jī)票編號(hào)航班編號(hào)A5453ZH1006機(jī)票編號(hào)航班編號(hào)B3130 ZH1006目的地changchun目的地changchun目的地changchun目的地changcliLin目的地changchun起飛時(shí)間起飛時(shí)間起飛時(shí)間起飛時(shí)間起飛時(shí)

17、間o i i i o名ta名ss名e名叫名杯姓ai姓前姓ng姓膈姓l(shuí)ih hozz 1 ffnau性別證件號(hào)碼male別證件號(hào)碼fenale別證件號(hào)碼nale別證件號(hào)碼female別證件號(hào)碼nale詢ZH1006的乘客信息,顯示沒(méi)有乘客majie的信息。綜上表明退 票成功。退出系統(tǒng):返回主菜單,選擇3L進(jìn)入航理篁理是統(tǒng)以進(jìn)入飛機(jī)票鎧譽(yù)系統(tǒng)k退出系統(tǒng):盧M 藉:聲:蘆:聲:蘆:蘆:尸:聲:訃 :聲

18、M: t*請(qǐng)選擇方選擇1,保存信息,退出系統(tǒng)3、開(kāi)發(fā)體會(huì)一個(gè)飛機(jī)票銷售系統(tǒng)所包含的信息很多,在剛拿到題目時(shí),對(duì)于 如何處理眾多的信息感到困惑。于是開(kāi)始思考從子函數(shù)到主函數(shù)這個(gè) 大致方向。首先,按照功能將程序大致劃分為6個(gè)模塊,定義兩個(gè)結(jié) 構(gòu)體鏈表指針flnode* (航班)和clnode* (乘客),為了方便在子模 塊中操作,將其定義為全局變量。模塊化思想能讓思路更清晰在子 函數(shù)中完成單個(gè)功能以減少錯(cuò)誤。在編程過(guò)程中,遇到的問(wèn)題如下:1、運(yùn)行時(shí)內(nèi)存不可讀。調(diào)試發(fā)現(xiàn)是打開(kāi)文件出錯(cuò),改正方法是 先將結(jié)構(gòu)體鏈表的第一個(gè)鏈結(jié)的信息輸入到內(nèi)存,再通過(guò)循環(huán)判斷語(yǔ) 旬while(!feof(fp_fligh

19、t)依次將鏈表的信息輸入到內(nèi)存。2、每個(gè)鏈表,分別定義了兩個(gè)全局變量指針,頭指針flhead*、 clhead*和尾指針fltail*、cltail*。在打開(kāi)文件操作、建立信息操作中, 需要先給頭指針?lè)峙鋬?nèi)存空間。最后要把新添加的鏈表指針賦給尾指 針,例如 fltail=p;fltail-next=NULL;3、購(gòu)票相當(dāng)于增加乘客鏈表一個(gè)鏈結(jié),同時(shí)修改航班鏈表信息。 退票相當(dāng)于刪除乘客鏈表一個(gè)鏈結(jié),同時(shí)修改航班鏈表信息。應(yīng)用鏈 表一章的相關(guān)知識(shí)分別編寫兩個(gè)子函數(shù)。4、在運(yùn)行時(shí),不能顯示文件中的信息,直接跳過(guò)printf (*); 語(yǔ)旬。反復(fù)檢測(cè)后發(fā)現(xiàn)是格式問(wèn)題。寫入文件中的信息在格式上要一 一

20、對(duì)應(yīng)。比如:printf(%8s%8s%12s%8s%13s%10s%20sn,p-data.pes_num,p-data.p es_flight,p-data.pes_des,p-data.pes_time,p-data.pes_name,p-data.pe s_sex,p-data.idcard);輸出乘客信息,在文件中寫入乘客信息時(shí)格式 %8s%8s%12s%8s%13s%10s%20sn保存文件函數(shù)中格式為fprintf(fp_client,%8s%8s%12s%8s%13s%10s%20sn,*)這次飛機(jī)票銷售系統(tǒng)的開(kāi)發(fā)任務(wù)是學(xué)習(xí)C語(yǔ)言以來(lái)所遇到的最 復(fù)雜的題目,也是將所學(xué)的知識(shí)應(yīng)用

21、到實(shí)際中去的一次實(shí)踐。之所以 覺(jué)得難,是因?yàn)槲募?、鏈表的相關(guān)知識(shí)掌握得不熟悉,很多方法需要 自學(xué),并且時(shí)間有限。但通過(guò)這次的分析、設(shè)計(jì)、開(kāi)發(fā),讓我初步掌 握了小規(guī)模程序的設(shè)計(jì)開(kāi)發(fā)方法和步驟。附錄:源代碼清單#include#include#include #include #includeFILE *fp_flight;/存儲(chǔ)航班信息的文件 FILE *fp_client;/存儲(chǔ)乘客信息文件typedef struct airlinechar fl_num20;/航 班編號(hào)char fl_des20;/ 目的地char fl_time20;/起 飛時(shí)間int fl_left;/剩余機(jī)票數(shù)int

22、 fl_max;/最 大載客數(shù) airflight;typedef struct pessenagerchar pes_num20;/乘 客機(jī)票編號(hào)char pes_flight20;/所 乘航班編號(hào)char pes_des20;/乘 客目的地char pes_time10;/起 飛時(shí)間char pes_name20;/乘 客姓名char pes_sex10;/乘客性 別char idcard20;/乘 客證件號(hào)碼 pessinform;typedef struct linkflightairflight data;struct linkflight *next;flnode;/航班信息結(jié)構(gòu)體

23、鏈表指針 flnode *flhead=NULL; /全局鏈表頭指針 flnode *fltail=NULL; /全局鏈表尾指針typedef struct linkclientpessinform data;struct linkclient *next;clnode;/a票信息結(jié)構(gòu)體鏈表指針clnode *clhead=NULL;clnode *cltail=NULL;void welcome() /界面歡迎函數(shù) printf(*n);printf(printf(中國(guó)航空n);n);printf(printf(歡迎進(jìn)入飛機(jī)票銷售系統(tǒng)n);n);printf(按任意鍵進(jìn)入_n);void o

24、pen_fl()/打開(kāi)航班信息文件函數(shù)flnode *p,*q;flhead=p=(flnode *)malloc(sizeof(flnode);fltail=(flnode *)malloc(sizeof(flnode);if(fp_flight=fopen(inf_fl.txt,rt)=NULL)printf(不能打開(kāi)文件,按任意鍵推出! n);getch();exit(1);rewind(fp_flight);/重 置文件指針/將文件中的信息輸入到內(nèi)存fscanf(fp_flight,%s%s%s%d%d”,p-data.fl_num,p-data.fl_des,p-data.fl_ti

25、me,&p-data.fl_left,&p-data.fl_max);while(!feof(fp_flight)q=(flnode *)malloc(sizeof(flnode);fscanf(fp_flight,%s%s%s%d%d”,q-data.fl_num,q-data.fl_des,q-data.fl_time,&q-data.fl_left, &q-data.fl_max;p-next=q;p=q;fltail=p;fltail-next=NULL;fclose(fp_flight);/關(guān)閉文件void save_fl()/存儲(chǔ)航班信息文件函數(shù)flnode *p=flhead;i

26、f(fp_flight=fopen(inf_fl.txt,wt)=NULL)printf(不能打開(kāi)文件,按任意鍵推出! n);getch();exit(1);while(p!=NULL)fprintf(fp_flight,%15s%15s%15s%10d%10dn”,p-data.fl_num,p-data.fl_des,p-data.fl_time,p-data.fl_left,p-data.fl_max);/將內(nèi)存中的信息輸出到文件p=p-next;fclose(fp_flight);/關(guān)閉文件void open_cl()/打開(kāi)乘客信息文件clnode *p,*q;clhead=p=(cl

27、node *)malloc(sizeof(clnode);cltail=(clnode *)malloc(sizeof(clnode);if(fp_client=fopen(inf_cl.txt,rt)=NULL)printf(不能打開(kāi)文件,按任意鍵推出! n);getch();exit(1);/將文件中的信息輸入到內(nèi)存fscanf(fp_client,%s%s%s%s%s%s%s”,p-data.pes_num,p-data.pes_flight,p-data.pes_des,p-data.pes_time,p-data.pes_name,p-data.pes_sex,p-data.idca

28、rd);while(!feof(fp_client)q=(clnode *)malloc(sizeof(clnode);fscanf(fp_client,%s%s%s%s%s%s%s”,p-data.pes_num,p-data.pes_flight,p-data.pes_des,p-data.pes_time,p-data.pes_name,p-data.pes_sex,p-data.idcard);p-next=q;p=q;cltail=p;cltail-next=NULL;fclose(fp_client);/關(guān)閉文件 void save_client()/存儲(chǔ)乘客信息文件clnode

29、*p=clhead;if(fp_client=fopen(inf_cl.txt”,wt)=NULL)printf(不能打開(kāi)文件,按任意鍵推出! n);getch();exit(1);while(p!=NULL)fprintf(fp_client,%8s%8s%12s%8s%13s%10s%20sn,p-data.pes_num,p-data.pes_flight,p-data.pes_des, p-data.pes_time,p-data.pes_name,p-data.pes_sex, p-data.idcard);p=p-next;fclose(fp_client);/關(guān)閉文件void m

30、anage_sys()/航班管理系統(tǒng)函數(shù) TOC o 1-5 h z printf(-航班管理系統(tǒng)n);printf(n);printf(-1、創(chuàng)建 航 班 信 息n);printf(2、瀏 覽 航 班 信 息n);void creat_fl()創(chuàng)建航班信息函數(shù)flnode *p;flhead=(flnode *)malloc(sizeof(flnode);p=(flnode *)malloc(sizeof(flnode);printf(-創(chuàng)建航班信息n);printf(請(qǐng)輸入航班編號(hào):n);scanf(%s”,p-data.fl_num);printf(請(qǐng)輸入飛行目的地:n);scanf(%

31、s”,p-data.fl_des);printf(請(qǐng)輸入起飛時(shí)間:n);scanf(%s,p-data.fl_time);printf(請(qǐng)輸入剩余機(jī)票數(shù):n);scanf(%d,&p-data.fl_max);printf(請(qǐng)輸入最大載客數(shù):n);scanf(%d,&p-data.fl_left);if(flhead=NULL)flhead=p;elsefltail-next=p;fltail=p;fltail-next=NULL;printf(-航班信息創(chuàng)建完畢!n);void scan_fl()瀏覽航班信息函數(shù)flnode *p=flhead;printf(-瀏覽航班信息n);if(p=N

32、ULL)printf(無(wú)任何航班信息n);elseprintf(-航班編號(hào)目的地t起飛時(shí)間t剩余機(jī)票數(shù)t最大載客數(shù)n);while(p!=NULL)printf(%15s%15s%15s%10d%10dn”,p-data.fl_num,p-data.fl_des,p-data.fl_time,p-data.fl_left,p-data.fl_max);/輸出航班信息p=p-next;void sold_sys()/銷售系統(tǒng)服務(wù)菜單函數(shù)printf(飛機(jī)票銷售系統(tǒng)n);printf(n);nnnn詢?cè)儎?wù)務(wù)查查服服息息買購(gòu)信信購(gòu)?fù)藀rintf(1、nnnn詢?cè)儎?wù)務(wù)查查服服息息買購(gòu)信信購(gòu)?fù)藀rint

33、f(2、乘 客printf(3、機(jī) 票printf(4、機(jī) 票printf(n);void search_fl()/航班信息查詢函數(shù)flnode *p=flhead;int a=0;char str15;printf(查詢航線n);printf(請(qǐng)輸入目的地:n);scanf(%s”,str);if(p=NULL)printf(-無(wú)任何航班信息! n);while(p!=NULL)if(strcmp(p-data.fl_des,str)=0)a=1;/找到查詢信息printf(-飛往此目的地的航班信息:n);printf(-航班編號(hào)七目的地宣 起飛時(shí)間t剩余機(jī)票數(shù)t最大載客數(shù)/);printf

34、(%15s%15s%15s%10d%10dn”,p-data.fl_num,p-data.fl_des,p-data.fl_time,p-data.fl_left,p-data.fl_max);/輸出航班信息p=p-next;if(a=0)printf(抱歉!沒(méi)有您所需的航班! n);void search_client()/乘 客信息查詢函數(shù)clnode *p=clhead;flnode *q=flhead;char str20;int x=0,y=0;printf(查詢乘客信息n);printf(-請(qǐng)輸入所要查詢的航班號(hào):n);scanf(%s”,str);getchar();while(

35、q!=NULL)if(strcmp(q-data.fl_num,str)=0)x=1;/找到此航班while(p!=NULL)if(strcmp(p-data.pes_flight,q-data.fl_num)=0)y=1;/找到此趟航班中乘客printf(-機(jī)票編號(hào)航班編號(hào)目的地 起飛時(shí)間 姓名性別t證件號(hào)碼n);printf(%8s%8s%12s%8s%13s%10s%20sn”,p-data.pes_num,p-data.pes_flight,p-data.pes_des,p-data.pes_time, p-data.pes_name,p-data.pes_sex,p-data.idc

36、ard);p=p-next;if(y=0)printf(此航班暫無(wú)乘客! n);q=q-next;if(x=0)printf(無(wú)此航班! n);void perchase_cl()/機(jī) 票購(gòu)買函數(shù) clnode *p;flnode *q=flhead;int x=0,y=0;char m20;p=(clnode *)malloc(sizeof(clnode);printf(購(gòu)買機(jī)票-n);printf(*航班信息*n吃printf(航班編號(hào)目的地起飛時(shí)間剩余機(jī)票數(shù)最大載客數(shù)n);printf(CA1000changchun09:0011200n);printf(CA1001guangzhou1

37、1:2712200n);printf(CA1002wuhan10:084100n);printf( CZ1003shenzhen15:2015100n);printf( AG1004shenzhen08:0015200n);printf( AG1005shanghai16:306200n);printf( ZH1006changchun14:557200n);printf( ZH1007chongqing07:303100n);printf( CA1008qingdao09:2010100n);printf( ZA1009wuhan20:205100n);printf(* 創(chuàng)建乘客信息 *n)

38、;printf(n);n);printf(n);printf(請(qǐng)輸入所乘航班編號(hào):n);scanf(%s,m);getchar();while(q!=NULL)if(strcmp(q-data.fl_num,m)=0)x=1;/找到此航班if(q-data.fl_left)0)/還有剩余機(jī)票y=1;printf(-請(qǐng)輸入機(jī)票編號(hào):n);scanf(%s”,p-data.pes_num);/輸 入機(jī)票編號(hào)printf(請(qǐng)輸入乘客姓名:n);scanf(%s”,p-data.pes_name);/輸 入姓名printf(-請(qǐng)輸入乘客性別:n);scanf(%s”,p-data.pes_sex);/

39、輸 入性別printf(請(qǐng)輸入證件號(hào)碼:n);scanf(%s”,p-data.idcard); /輸入證件號(hào)碼strcpy(p-data.pes_flight,q-data.fl_num);/復(fù)制機(jī)票的航班編號(hào) strcpy(p-data.pes_des,q-data.fl_des);/復(fù)制機(jī)票的目的地 strcpy(p-data.pes_time,q-data.fl_time);/復(fù)制機(jī)票的起飛時(shí)間 if(clhead=NULL)clhead=p;elsecltail-next=p;cltail=p;cltail-next=NULL;(q-data.fl_left)-;/購(gòu)買一張機(jī)票,剩余

40、機(jī)票數(shù)減少一張if(y=0)printf(已無(wú)剩余機(jī)票! n);elseprintf(乘客信息創(chuàng)建完畢!購(gòu)票成功! n);q=q-next;if(x=0)printf(無(wú)此航班! n);void ticket_back()/退 票函數(shù)flnode *p=flhead;clnode *q=clhead,*qq;char m15,str20;int x=0;int flag=0;printf(退票n);printf(*航班信息*n);printf(航班編號(hào)目的地起飛時(shí)間 剩余機(jī)票數(shù)最大載客數(shù)/printf( CA1000changchun09:0011200n);printf( CA1001guangzhou11:2712200n);printf(CA1002wuhan10:084100n);printf( CZ1003shenzhen15:2015100n);printf( AG1004shenzhen08:0015200n);printf( AG1005shanghai16:306200n);printf( ZH1006changchun14:557200n);printf( ZH1007chongqing07:303100n);printf( CA1008qingdao09:2010100n);printf(ZA1009wuhan20:205100n);prin

溫馨提示

  • 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ù)網(wǎng)僅提供信息存儲(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)論