当前位置:首页 > 订票系统
if(!(strcmp(air_num,p->air_num))&&!(strcmp(year,p->year))&&!(strcmp(month,p->month))&&!(strcmp(day,p->day))) { c=0; if(p->tkt_sur) { printf(\此航班还有%d张票可订,请输入您要订票的张数:\ scanf(\ if(m<=p->tkt_sur) { printf(\您已成功订到%d张票!\\n请输入您的姓名:\ if(!(q=(linklist)malloc(sizeof(Lnode)))) { printf(\分配空间出错\ a=getchar(); return 0; } scanf(\ printf(\请输入您的身份证号码:\ scanf(\ q->dpl=m; if(!(b=(char*)malloc(sizeof(char)))) { printf(\分配空间出错\ a=getchar(); return 0; } strcpy(q->airnum,p->air_num); itoa(p->tkt_sur,b,10); strcpy(q->piaohaio,p->air_num); strcat(q->piaohaio,p->year); strcat(q->piaohaio,p->month); strcat(q->piaohaio,p->day); strcat(q->piaohaio,b); printf(\您所订票的编号:%s\ p->tkt_sur-=m; q->next=p->order->next; p->order->next=q; return 1; } else { printf(\对不起余票量不够,请选择其他航班!\ k=1;
9
} } if(!p->tkt_sur||k==1) { printf(\航班已经满仓,您可以选择以下相关航班:\\n\ while(t) { if(!(strcmp(t->year,p->year))&&!(strcmp(t->month,p->month))&&!(strcmp(p->qdname,t->qdname))&&!(strcmp(p->zhname,t->zhname))&&p->tkt_sur) { printf(\航班号 机型 飞行日期 起降时间 票价 折扣 余票量\\n%s %s %s/%s/%s %s:%s %s:%s %5.1f %3.1f %d\\n \t->price,t->zhekou,t->tkt_sur); } t=t->next; } printf(\有没有您可以乘坐的航班\\t0 没有 \\t 非0整数 有\\t请选择:\ scanf(\ if(!x) { printf(\请输入您的姓名、联系方式\\n\ if(!(s=(qptr)malloc(sizeof(qnode)))) { printf(\分配空间出错!\ a=getchar(); return 0; } scanf(\ scanf(\ s->next=NULL; if(p->wait->front==NULL&&p->wait->rear==NULL) /*等候订票队列为空*/ p->wait->rear=p->wait->front=s; else { s->next=p->wait->rear->next; p->wait->rear->next=s; p->wait->rear=s; } printf(\如果有人退票,我们会在第一时间联系您!\\n\ return 0;
10
} else return Dinpiao(H); } } p=p->next; } if(c) { printf(\没有您所指定的航班,0 菜单栏月、日\\n\ scanf(\ if(d) return Dinpiao(H); else return 0; } return 1; }
int Tuipiao(lineair H) //退票 { lineinfo *p; int m=0,t; Lnode *q,*f; char b[20]; scanf(\ p=H->next; while(p) { q=p->order->next; if(!(strcmp(b,q->piaohaio))) { m=1; p->order->next=q->next; t=q->dpl; free(q); break; } while(q->next) { if(!(strcmp(b,q->next->piaohaio))) { m=1; f=q->next;
11
非0数字 重新输入航班号,票的年、 }
t=f->dpl; q->next=f->next; free(f); break; }
q=q->next; } if(m)
break; p=p->next; } if(!m) {
printf(\对不起没有搜索到您的订单,请重新输入订单编号!\ Tuipiao(H); } else {
printf(\您已成功退票!\\n\ p->tkt_sur+=t;
if(p->wait->rear==p->wait->front) return 1; else
{//机场订票系统服务人员马上通知本次航班等候订票乘客 printf(\通知等候订票的乘客,通知成功后按任意键\\n\ getchar();
return Dinpiao(H); } }
4. 结果与结论
4.1编译运行结
图4.1订票系统的运行结果
12
共分享92篇相关文档