資源描述:
《航空客運(yùn)訂票系統(tǒng)--數(shù)據(jù)結(jié)構(gòu)課程設(shè)計(jì).doc》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、#include#include#include#include#defineok1typedefstructYidingkehu{//單鏈表charname[15];//已訂票的客戶姓名intdingpiaoshu;//已訂票數(shù)量structYidingkehu*next1;}Yidingkehu,*Link;typedefstructWeidingkehu{//單鏈隊(duì)charname[15];//預(yù)訂票的客戶姓名intyudi
2、ngpiao;//要訂票數(shù)量structWeidingkehu*next2;//下一個(gè)鏈隊(duì)結(jié)點(diǎn)指針}Weidingkehu,*Qptr;typedefstruct{Qptrfront;//單鏈隊(duì)頭結(jié)點(diǎn)Qptrrear;//單鏈隊(duì)尾結(jié)點(diǎn)}linkQueue;typedefstructHangxian{//創(chuàng)建一個(gè)航線的結(jié)構(gòu)體charhangbanhao[15];//航班號(hào)-charfeijihao[15];//飛機(jī)號(hào)intfeixingriqi;//起飛時(shí)間intlevel;//倉(cāng)位intyupiao;/
3、/余票charzhongdianzhan[15];//降落城市structHangxian*next;//指向下一個(gè)鏈結(jié)點(diǎn)的指針structYidingkehu*yiding;//定義一個(gè)指向已訂票客戶的頭結(jié)點(diǎn)指針structWeidingkehu*yudingqueue;}Hangxian,*Linklist;structHangxian*L=NULL;//定義全局量structYidingkehu*H;//為已訂票客戶鏈隊(duì)來申請(qǐng)空間linkQueueQ;//linkQueue類型的來申請(qǐng)空間Link
4、listInitLinklist();//聲明intInsertLinklist(Linklist&head1);//聲明voidhbhchaxun();//通過航班號(hào)查詢voidmddchaxun();//通過目的地查詢voidlurugongneng();//初始化錄入功能voidchaxungongnen();//查詢功能voiddingpiaogongnen();//訂票功能voidtuipiaogongnen();//退票功能voidmain(){H=(structYidingkehu*)ma
5、lloc(sizeof(Yidingkehu));Q.front=Q.rear=(Qptr)malloc(sizeof(Weidingkehu));InitLinklist();intn;do{//打印主界面printf("t歡迎使用航空客運(yùn)訂票系統(tǒng)");printf("t+++++++++++++++++++++++++++++");printf("t==>1.錄入功能==");printf("t==>2.查詢功能==");printf("t==>3.訂票功能==");p
6、rintf("t==>4.退票功能==");printf("t==>5.退出==");printf("t+++++++++++++++++++++++++++++");printf("t請(qǐng)選擇:");scanf("%d",&n);printf("");switch(n){case1:lurugongneng();//錄入功能break;case2:chaxungongnen();//查詢功能break;case3:dingpiaogongnen();//訂票功能break;cas
7、e4:tuipiaogongnen();//退票功能break;default:exit(0);//退出}}while(n==1
8、
9、n==2
10、
11、n==3
12、
13、n==4);}voidlurugongneng()//初始化的單鏈表*********************************************************錄入功能{intj=1,m;do{if(!InsertLinklist((Linklist)L))//向其中加入航班信息{printf("內(nèi)存已滿");exit(OV
14、ERFLOW);}//向鏈表中加一結(jié)點(diǎn)printf("t是否要輸入下一個(gè)航線記錄?");printf("t是請(qǐng)輸入1");printf("t否請(qǐng)輸入2t");scanf("%d",&m);//在這里依靠人來決定是否輸入下一條航線記}while(m==1);}LinklistInitLinklist(){L=(Linklist)malloc(sizeof(Hangxian));if(!L)exit(OVERFLOW);L-