如何用c语言制作飞机订票系统,C语言编程飞机订票系统如何设计?
題目:編制一個航空客運訂票系統,實現簡單的機票操作
班級:計0702 姓名:學號: 完成日期:2008年12月20日
一、 實驗內容:
1、問題描述:
航空客運訂票的業務包括:查詢航班、客票預訂和辦理退票等。試設計一個航空客運訂票系統,已使上述業務可以借助計算機完成。
2、基本要求:
1)每條航線所涉及的信息有:終點站名、航班號、飛機號、星期幾飛行飛行周日(星期幾)、乘員定額、余票量、已訂票的客戶名單(包括姓名、訂票量、艙位等級)以及等候補替補的客戶名單(包括姓名、所需票量);
2)作為示意系統,全部數據可以只放在內存中;
3)系統能實現的操作和功能如下:
? 查詢航線:根據旅客提出的終點站名輸入下列信息:航班號、飛機號、星期幾起飛,最近航班的日期和余票量。
? 承辦訂票業務:根據客戶提出的要求(航班號、訂票數額)查詢該航班票額情況,若尚有余票,則為客戶辦理訂票手續,輸出座位號;若已滿員或者余票數少于訂票額,則需重新尋味客戶要求,若需要,可登記排隊候補;
? 承辦退票業務:根據客戶提供的情況(日期、航班),為客戶辦理退票手續,然后查詢該航班是否有人排隊等候補,首先詢問排在第一的客戶,若所有退票額能滿足他的要求,則為他辦理訂票手續否則依次詢問其他排隊候補的客戶。
? (選作)為客戶訂票要求不能滿足時,系統可向客戶提供到達同一目的地的其他航線情況。
二、 概要設計:
1、 流程設計框圖
2、 程序框架
1) 基本操作
Status InitList_Sq(SqFlight &LF); 構造一個空的線性表LF
Status InitList_CL(ClientLink &CL);為客戶鏈表建一個空鏈表
Status InitList_WCQ(WClientQueue &WCQ) 為待票客戶建一個空的隊列
Status InitFlightNode(SqFlight &LF) 對航線結點賦值并接到航班順序表
Status wbook(SqFlight LF,flightnode *p) 隊列建立:等待客戶列表建立
flightnode *search(int number,SqFlight LF)//線性表 按number查詢
ClientNode *searchID(flightnode *p,char *ID)//鏈表 按ID查找客戶
2) 函數構成
Viod main()
{ ? menu();
case1: lookup(airline,LF);//查詢
case2: book(number,LF);//訂票
? ? ? ? ? ?case3: back_ticket(number,LF);//退票
? ? ? ? ? ?case4: GetElem(LF,number);//查詢訂票情況
? ? ? ? ? ?case5:清屏指令
? ? ? ?case6:結束指令
? ? }
Status lookup(char *airline,SqFlight LF){}
Status book(int number,SqFlight LF)
{ ? case 4:
find_oth(p->airline,LF,p->number);
? ?}
? ? ? ?Status find_oth(char *airline,SqFlight LF,int plannumber)//尋找相同航線其他有余票的飛機
? ? Status back_ticket(int number,SqFlight LF)
? ? {ask_clien(p,LF);}
? ? Status ask_clien(flightnode *p,SqFlight LF)//詢問排隊客戶
? ? Status GetElem(SqFlight LF,int number)
◆◆
評論讀取中....
請登錄后再發表評論!
◆◆
修改失敗,請稍后嘗試
總結
以上是生活随笔為你收集整理的如何用c语言制作飞机订票系统,C语言编程飞机订票系统如何设计?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DurOS语音开发
- 下一篇: 智慧新泰时空大数据与云平台_智慧警务大数