航空訂票系統課程設計_第1頁
航空訂票系統課程設計_第2頁
航空訂票系統課程設計_第3頁
航空訂票系統課程設計_第4頁
航空訂票系統課程設計_第5頁
已閱讀5頁,還剩11頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、設計題目航空訂票系統任務:航空客運定票的業務活動包括:查詢航線、客票預定和辦理退票等。試設計一個航空客運定票系統,以使上述業務可以借助計算機來完成。功能要求:(1)錄入:可以錄入航班情況(2)查詢:可以查詢某個航線的情況(如輸入航班號,查詢起降時間,起飛抵達城市,航班票價,票價折扣,確定航班是否滿倉);可以輸入起飛抵達城市,查詢飛機航班情況;(3)訂票:(訂票情況可以存在一個數據文件中,結構自己設定)可以訂票,如果該航班已經無票,可以提供相關可選擇航班;(4)退票: 可退票,退票后修改相關數據文件;(5)客戶資料:有姓名,證件號,訂票數量及航班情況,訂單要有編號;(6)修改航班信息:當航班信息

2、改變可以修改航班數據文件。需求分析本演示程序中,由用戶錄入或修改航班情況,進行查詢,預定及辦理退票等業務,用戶在菜單中進行各個不同功能的選擇,有“輸入航班信息”、“列出航班信息”、“按航班號查詢航班信息”、“按出發到達城市查詢航班信息”、“訂票”、“退票”、“修改航班信息”、“退出程序”八個功能。概要設計typedef structdouble number;/訂單編號char name20;/姓名char id20;/身份證號int count;/數量char p20;/航班號GUEST;typedef structchar num20;/航班號char depart30;/出發城市char

3、 arrive30;/到達城市char start20;/起飛時間char end20;/到達時間int price;/價格int discount;/折扣率(%)int total;/總票數int rest;/剩余票數int t;/訂單數GUEST guest20;/乘客PLANE; PLANE plane20;int n;/n為航班數void inputplane()/輸入航班void list()/顯示void search1()/按航班號查詢void search2()/按起飛抵達城市查詢void book()/訂票void quit()/退票void change()/修改程序調用關

4、系如下:開始輸入操作編號(1-10)? 1 2 3 4 5 6 7 8 修改航班信息退出訂票退票按出發到達城市查詢航班信息按航班號查詢航班信息列出航班信息輸入航班信息詳細設計#include#include#includetypedef structdouble number;/訂單編號char name20;/姓名char id20;/身份證號int count;/數量char p20;/航班號GUEST;typedef structchar num20;/航班號char depart30;/出發城市char arrive30;/到達城市char start20;/起飛時間char end2

5、0;/到達時間int price;/價格int discount;/折扣率(%)int total;/總票數int rest;/剩余票數int t;/訂單數GUEST guest20;/乘客PLANE; PLANE plane20;int n;/n為航班數void inputplane()/輸入航班int i;printf(輸入總航班數:);scanf(%d,&n);printf(輸入航班信息:n);printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n);for(i=0;in;i+)scanf(%s %s %s %s %s %d %d %d %d,pl

6、anei.num,planei.depart,planei.arrive,planei.start,planei.end,&planei.price,&planei.discount,&planei.total,&planei.rest);void list()/顯示int i;printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n);for(i=0;in;i+)printf(%s %s %s %s t%st%d %dt%d t%dn,planei.num,planei.depart,planei.arrive,planei.start,planei.e

7、nd,planei.price,planei.discount,planei.total,planei.rest);void search1()/按航班號查詢int i;char num20;printf(輸入你查詢的航班號:);scanf(%s,num);for(i=0;in;i+)if(strcmp(num,planei.num)=0)printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n);printf(%s %s %s %s t%st%d %dt%d t%dn,planei.num,planei.depart,planei.arrive,plan

8、ei.start,planei.end,planei.price,planei.discount,planei.total,planei.rest);break;if(i=n)printf(沒有此航班!n);void search2()/按起飛抵達城市查詢int i;char a50,b50;printf(輸入起飛城市和到達城市:);scanf(%s %s,a,b);printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n);for(i=0;in;i+)if(strcmp(a,planei.depart)=0)&(strcmp(b,planei.arriv

9、e)=0)printf(%s %s %s %s t%st%d %dt%d t%dn,planei.num,planei.depart,planei.arrive,planei.start,planei.end,planei.price,planei.discount,planei.total,planei.rest);printf(n);for(i=0;in;i+)if(strcmp(a,planei.depart)=0)&(strcmp(b,planei.arrive)=0)break;if(i=n)printf(沒有此航班!n);void book()/訂票char name20,p20,

10、id20;double number; int i,j,k,y,count;for(i=0;in;i+)planei.t=0;doprintf(輸入訂單信息:n);printf(訂單編號 姓名 身份證號 訂票數 航班號n);scanf(%d %s %s %d %s,&number,name,id,&count,p);for(i=0;i=count)j=planei.t; planei.guestj.number=number; strcpy(,name); strcpy(planei.guestj.id,id); planei.guestj.count=co

11、unt; strcpy(planei.guestj.p,p); planei.rest-=count; planei.t+;elseprintf(很抱歉,該航班剩余票數為 %d 張n,planei.rest); for(k=0;kn;k+)if(strcmp(planei.depart,planek.depart)=0)&(strcmp(planei.depart,planek.depart)=0)break;if(k=n)printf(沒有其他從%s到%s的航班n,planei.depart,planei.arrive);elseprintf(從%s到%s還有 %s 航班nn,planek.

12、depart,planek.arrive,planek.num);printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n); printf(%s %s %s %s t%st%d %dt%d t%dn,planek.num,planek.depart,planek.arrive,planek.start,planek.end,planek.price,planek.discount,planek.total,planek.rest);printf(是否繼續訂票,“是”輸入1,“否”輸入0n);scanf(%d,&y);while(y);void quit(

13、) /退票 double number; char id20; int i,j,temp,k,y; temp=0; printf(請輸入您的訂單編號:n); scanf(%d,&number); printf(請輸入您的身份證:n); scanf(%s,id); for(i=0;in;i+) for(j=0;jplanei.t;j+) if(number=planei.guestj.number&(strcmp(id,planei.guestj.id)=0) temp=1; break; if(temp=1) break; if(i=n) printf(沒有此訂單!n); else print

14、f(訂單編號 姓名 身份證號 訂票數 航班號n); printf( %d,planei.guestj.number); printf( %s,); printf( %s,planei.guestj.id); printf( %d,planei.guestj.count); printf( %sn,planei.guestj.p); printf(您是否確認刪除(1/0)n); scanf(%d,&y); if(y=1) planei.rest+=planei.guestj.count; for(k=j+1;kplanei.t;k+) planei.guest

15、k-1.number=planei.guestk.number; strcpy(,); strcpy(planei.guestk-1.id,planei.guestk.id); planei.guestk-1.count=planei.guestk.count; strcpy(planei.guestk-1.p,planei.guestk.p); planei.t-; printf(退票成功!n); void change()/修改 char a20; int i; printf(請輸入你要修改的航班號:); scan

16、f(%s,a); for(i=0;in;i+) if(strcmp(a,planei.num)=0) break; if(i=n) printf(沒有此航班!n); else printf(原信息:n); printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n); printf(%s %s %s %s t%st%d %dt%d t%dn,planei.num,planei.depart,planei.arrive,planei.start,planei.end,planei.price,planei.discount,planei.total,plane

17、i.rest); printf(請輸入修改后的信息:n); printf(航班號 出發城市 到達城市 起飛時間 到達時間 價格 折扣率 總票數 剩余票數n); scanf(%s %s %s %s %s %d %d %d %d,planei.num,planei.depart,planei.arrive,planei.start,planei.end,&planei.price,&planei.discount,&planei.total,&planei.rest); void main() int a,b; do system(cls); for(a=0;a50;a+)printf(*);pr

18、intf(n);printf(tt1: 輸入航班信息n); printf(tt2: 列出航班信息n); printf(tt3: 按航班號查詢航班信息n); printf(tt4: 按出發到達城市查詢航班信息n); printf(tt5: 訂票n); printf(tt6: 退票n); printf(tt7: 修改航班信息n); printf(tt8: 退出程序n);for(a=0;a50;a+)printf(*);printf(n);printf(請輸入功能選項1-8):n); scanf(%d,&b); switch(b) case 1: inputplane(); system(pause);break;case 2: list(); system(pause);break; case 3: search1(); system(pause);break

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論