航空客运订票系统源代码Word文档格式.docx
- 文档编号:15891902
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:18
- 大小:19.83KB
航空客运订票系统源代码Word文档格式.docx
《航空客运订票系统源代码Word文档格式.docx》由会员分享,可在线阅读,更多相关《航空客运订票系统源代码Word文档格式.docx(18页珍藏版)》请在冰豆网上搜索。
staticintairnum=1;
//航线数(全局变量)
//顾客结构体
structcustomer{
charname[9];
//顾客名
charline_num[8];
//航班号
intpiaonum;
//座位号
structcustomer*next;
//下一个结点
};
typedefcustomer*Linkcustomer;
//候补顾客结构体
typedefstructhoubuNode{//候补顾客结构体
//姓名
charend_place[10];
//终点站
intpnum;
//票数
structhoubuNode*next;
//指针域
}*houbucustomer;
structLinkQueue
{
houbucustomerfront,rear;
//队头队尾指针
//航线结构体
structairline{
charplane_num[8];
//飞机号
charend_place[20];
//目的的
charfly_data[20];
//飞行周日
inttotal;
//座位总数
intleft;
//剩余座位
Linkcustomercustom;
//订票顾客指针
LinkQueuehoubucus;
//候补顾客指针
structairline*next;
//下一个结点
typedefairline*Linkairline;
//初始化航线链表
voidinit_airline(Linkairline&
l){
l=newairline[sizeof(airline)];
//产生头结点,并始l指向此头结点
if(!
l){//存储分配失败
exit(0);
//退出
}
l->
next=NULL;
//头结点的指针域为空
}
//初始化顾客链表(同初始化航线链表)
voidinit_customer(Linkcustomer&
l=newcustomer[sizeof(customer)];
//初始化候补顾客队列链表(同初始化航线链表)
voidinit_houbucustomer(LinkQueue&
Q){
Q.front=Q.rear=newhoubuNode[sizeof(houbuNode)];
//
Q.front){
Q.front->
//判断airline链表是否为空
statusairLineEmpty(LinkairlineL)
if(L->
next)//非空
returnFALSE;
else
returnTRUE;
//airline链表插入操作
statusinsert_airline(LinkairlineL,inti,char*line_num,char*plane_num,char*end_place,char*fly_data,inttotal,intleft,Linkcustomercustom,LinkQueuehoubucus){
intj=0;
//计数器
Linkairlines,p=L;
//p指向头结点
while(p&
&
j<
i-1)//寻找第i-1个结点
{
j++;
p=p->
next;
p||j>
i-1)//i小于1或大于表长
returnERROR;
//插入失败
s=newairline[sizeof(airline)];
//生成新结点
strcpy(s->
line_num,line_num);
//给新结点赋值
plane_num,plane_num);
end_place,end_place);
fly_data,fly_data);
s->
total=total;
left=left;
custom=custom;
houbucus=houbucus;
next=p->
//新结点指向原第i个结点
p->
next=s;
//原第i-1个结点指向新结点
returnOK;
//插入成功
//customer链表插入操作(同airline链表插入操作)
statusinsert_customer(LinkcustomerL,inti,char*name,char*line_num,intpiaonum){
Linkcustomers,p=L;
i-1)
s=newcustomer[sizeof(customer)];
name,name);
piaonum=piaonum;
//houbucustomer入队操作
voidinsert_houbucustomer(LinkQueue&
Q,char*name,char*end_place,intpnum){
houbucustomerp;
p=newhoubuNode[sizeof(houbuNode)];
strcpy(p->
pnum=pnum;
Q.rear->
next=p;
Q.rear=p;
//houbucustomer出队操作
statusdel_houbucustomer(LinkQueue&
Q,houbuNode&
hbnode){
p=Q.front->
strcpy(hbnode.name,p->
name);
strcpy(hbnode.end_place,p->
end_place);
hbnode.pnum=p->
pnum;
if(Q.rear==p)
Q.rear=Q.front;
deletep;
//houbucustomer输出操作
voidprint_houbucustomer(LinkQueueQ)
houbucustomerp=Q.front->
cout<
<
"
候补顾客为:
endl;
姓名终点站票数"
while(p)
cout<
p->
name<
"
end_place<
//打印航线信息
statusprint_airline(Linkairlinel)
endl<
航班号飞机号目的地飞行周日总票数余票数订票客户替补客户"
Linkairlinep=l->
next;
for(;
p!
=NULL;
p=p->
next)
setiosflags(ios:
:
left)<
setw(9);
line_num<
setw(10)<
plane_num<
setw(9)<
end_place
<
setw(12)<
fly_data<
total<
setw(8)<
left<
setw(12)<
(p->
houbucus)<
custom)<
//打印航线信息(print_airline重载)
statusprint_airline(Linkairlinel,stringname,intN)
stringinfo;
boolflag=true;
if(N==1)
info=p->
end_place;
else
line_num;
if(info==name)
{
flag=false;
cout<
//输出格式控制
<
break;
}
if(flag)
对不起,没有终点站为"
的航班"
对不起,没有航班号为"
end
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 航空 客运 订票 系统 源代码
![提示](https://static.bdocx.com/images/bang_tan.gif)