航空管理系統(tǒng)_第1頁
航空管理系統(tǒng)_第2頁
航空管理系統(tǒng)_第3頁
已閱讀5頁,還剩16頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、int c;doprintf(un航空訂票系統(tǒng)E);p泊 世"nt* *材*卅* *材*:冏:*材* *柯打“)printf(nn 1錄入航班信息nHprintf(nn 2修改航班信息nHprintf(nn 3查詢航班信息nHprintf(nn 4顯示航班信息nnprintf(nn 5訂票n”);printf(nn 6退票n“);printf(nn 7顯示訂票信息nHprintf(nn 0退出系統(tǒng)nn));););););p 行口 世 ”nt* 材 * *:枠* *材*粉5 “);printf(H請選擇操作:J;scanfC%(T;&c);switch(c)case 1:pr

2、intf(n您選擇錄入航班信息:岸);insert();break;case 2:printf(n您選擇修改航班信息:十);modiiyO;break;case 3:printf(n您選擇查詢航班信息:nn);query();break;case 4:printf(H您選擇顯示航班信息:岸);showR);break;case 5:printf(Hbooktk();您選擇訂票:岸);break;case 6:printf(Hbacktk();您選擇退票:nn);break;case 7:printf(H您選擇顯示訂票信息:岸);showb();break;case O:printf(H您選擇退

3、出訂票系統(tǒng):nn);break;defoult:lprintfstderr,Select error!nn);while(c !=0);printf(Hn*謝謝您的使用!歡迎您的下次使用榊林十);void booktk() /訂票int n,x,y,i;char a10;FILE博,逬b;定義文件指針char name 1 20, ii10;bookticket bN;doprintfC'Xn請輸入終點(diǎn)站名稱:”);scanR“s”,name 1);/讀取終點(diǎn)站if(ip=fopen(nflight.dat,Mrb,')=NULL)fprintf(stderr,"ca

4、n not open theexit(-l);rewind(tp);fbr(i=0;i<N;i+)tread(&airi,sizeobstruct flight),!,Ip);fbr(i=0;i<N;i+)if(strcmp(airi.destination,namel)=0)/按終點(diǎn)站起始站判定輸出條件y=i;printf("查找航班信息成功! n“);printf(Hn航班號 起飛時(shí)間降落時(shí)間起點(diǎn)終點(diǎn)票價(jià)折扣余票量n“);printf(PRINT);break;printfC*n沒有您需要的信息或查找完畢!是否繼續(xù)查找?請鍵入yes或no以回車鍵結(jié)束”);sc

5、anfC%s”,ii);wh ile(strcmp(ii, nye s n)=0);/判定結(jié)束fclose(lp);if(fo=fopen(nbt.daf,;,ab,)=NULL)/打開文件,并判定是否出錯(cuò)printf(M創(chuàng)建文件失?。?”);打印出錯(cuò)提示getchar();return;i=0while(fread(&bi,sizeof(struct bookticket), 1 ,ib)= 1) &&ivN)fread(&bi,sizeof(struct bookticket),l,fb);i+;fclose(ib);doprintf(An請輸入您要訂的機(jī)票

6、數(shù)以回車鍵結(jié)束:”);scanfC%cT;&n);if(n<0)printfCVi錯(cuò)break;)if(airy.capcity <n)/printf(Hn讀取所訂機(jī)票數(shù)請輸入有效的機(jī)票數(shù)!“);判定機(jī)票數(shù)是否出判定是否出錯(cuò)請輸入有效的機(jī)票數(shù):-);break;if(airy.capcity!=0 && airy.capcity>=n)/判定是否岀錯(cuò)a iry. capcity =airy.capcity-n; /航班中可載客量減去訂票數(shù)wr();printf(nn請輸入訂單號:”);scanftH%dn,&bt.ticketnum);prim

7、f(“n”);printf(M請輸入客戶姓名:”);scanf(n%sn,bt.clientname);printf(,*nn);printf(M請輸入客戶證件號:”);scanf(n%su,bt.clientnum);printf(Hnn);bt.total =n;bt.fnum =airy.fnum ;break;printf(*n是否繼續(xù)? 請輸入yes或no以回車鍵結(jié)束:”);/判定是否繼續(xù)訂票scanff'%s”,a);wh ile(!strcmp(a,nyesn);/判定結(jié)束if(fo=fopen(,bt.dat,rb+H)=NULL)/打開文件,并判定是否出錯(cuò)printf

8、(M創(chuàng)建文件失敗!");/ 打印出錯(cuò)提示getchar();return;i=0;while (i<x)fseek(tb,i*sizeof(struct bookticket),SEEK_SET);fwrite(&bi,sizeof(struet bookticket), 1 ,ib);i+;fseek(fb,OL,SEEK_END);/將輸入的寫入位置放到文件尾iwrite(&bt,sizeof(bt),l,fbfwrite(&bt,sizeobstruct bookticket),l,fb);printf(nn 訂票成功!H);fclose(tb);

9、void backtk()/退票模塊int i=0,n;char name MAX;char a MAX;FILE *fb,*tp;if(tb=fopenC,bt.dar,"wb,)=NULL)/打開文件,并判定是否出錯(cuò)printf(H 創(chuàng)建文件失?。 ?;/ 打印出錯(cuò)提示getchar();return;printf(nn請輸入您的姓名:");scanf("%s% *cu,name);rewind(lb);while(!feof(tb) && !ferror(tb)fread(&bt,sizeobstruct bookticket),!,

10、ib);if(!s trcmp(name,bt.clientname) printf(Hn您的訂票信息如下:nn);printf(PRINTl);break;else printf(Hnbreak;沒有您需要的信息叮;exit(-l);fclose(tb);doprintf(*n請輸入您要退的機(jī)票數(shù)以回車鍵結(jié)束:”);scanf(H%dM,&n);/ if(n<0)printfCVi錯(cuò)break;)if(bt.total<n)printf(Hn讀取所訂機(jī)票數(shù)請輸入有效的機(jī)票數(shù)!“);判定機(jī)票數(shù)是否出請輸入有效的機(jī)票數(shù):-);break;if(lp=fopen(nflight

11、.datn,Mr+wn)=NULL) tprintf(stderr/'can not open the file!nn);exit(-l);rewind(Ip);for(i=0;i<N;i+)tread(&airi,sizeobstruct flight), 1,ip);if(airi.fnum =bt.lhum )/判定是否出錯(cuò)a iri.capcity =aii*i.capcity+n;break;fclose(lp);wr();printf(*n是否繼續(xù)?請輸入yes或no以回車鍵結(jié)朿:“);/判定是否繼續(xù)訂票scanR”s”,a);判定結(jié)束wh ile (!s t

12、rc mp (a, ”ye s");/if(tb=fopen(Hbt.dat,rb+,)=NULL)/打開文件,并判定是否出錯(cuò)printfC* 創(chuàng)建文件失敗!”);/getchar();re turn;bt.total =bt.total-n;/個(gè)訂票信息fseek(tb,OL,SEEK_END);/fwrite(&bt,sizeobstruct bookticket), 1 ,tb);fclose(fb);printf(nn 退票成功!“);打印出錯(cuò)提示這個(gè)地方還有點(diǎn)問題,只能保存一將輸入的寫入位置放到文件尾void wr()/息寫入文件FILE *ff;定義文件指針int

13、 i;將航班flight.dat 信if(ff=fopen(Hflight.datn,nwbn)=NULL)/打開文件并判定是否出錯(cuò)printf(H創(chuàng)建文件失??!”); 打印岀錯(cuò)提示getchar();return;向文件寫入數(shù)據(jù),并判定是否fbr(i=O;i<N;i+)if(fwrite(&airi,sizeof(struet flight),l,ft)=0) /出錯(cuò)printf(H向文件輸入數(shù)據(jù)失敗!n n);fclose(tt);/關(guān)閉文件void query()/查詢航班信息char name 1 20;char ii10;int n,no,i;FILE *lp;dopr

14、intf(u請選擇查找方式:nH);/打印查詢方式菜單printf(nl.按航班號查找n“);printf(n2.按終點(diǎn)站查找岸);printf(nO 返回 nn);printf(Hn 請?jiān)?2中選擇:”); scanf(”d”,&n);讀取查找方式if(n=O) break;switch(n)case 1:printf(u請輸入航班號:”);scanfC%d”,&no); 航班號break;case 2:printf(u請輸入終點(diǎn)站名稱:");scanfitn%sn,name 1);/讀取終點(diǎn)站break;if(ip=fopen(,flight.dat,;,rbH)=NULL)tprintf(stderr,ncan not open the file !n"); exit(-l);rewind(tp);for(i=0;i<N;i+)tread(&airi,sizeofi;struct flight),!,ip);fbr(i=O;i<N;i+)按終點(diǎn)站起始站判定輸岀條件if(strcmp(airi.destination,name 1 )=0)/printf(M查找航班信息成功!n“);終點(diǎn)printfC1航班號起飛時(shí)間降落時(shí)間起點(diǎn)票價(jià)折扣余票量n“);printf(PRINT);printR

溫馨提示

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

評論

0/150

提交評論