数据结构课程设计:飞机订票系统设计与实现(里面附有源代码!)(6)

2025-06-25

if(strcmp(p->flight_num,f->flight_num)==0) { f->left=f->left+p->ticket_num; f->isFull=0; break; } pr->next=p->next; free(p); printf(\顾客%s,%s退票成功!\\n\ return 1; } pr=pr->next; p=pr->next; } printf(\无此顾客,无法退票!\\n\ return 0; }

void add_flight(flightnode *&h)//录入航班信息后调用insert_flight函数增加航班 { flightnode *p=h; char flight_num[10],start_time[10],end_time[10],start_place[20],end_place[20]; int left,isFull,mark=1; float price,price_discount; for(;p->next!=NULL;p=p->next){}//移动指针,找到最后一个结点 while(mark==1) { printf(\请输入你要增加的航班号:\ scanf(\ printf(\请输入出发地:\ scanf(\ printf(\请输入目的地:\ scanf(\ printf(\请输入起飞时间:\ scanf(\ printf(\请输入抵达时间:\ scanf(\ printf(\请输入票价:\ scanf(\ printf(\请输入折扣:\ scanf(\ printf(\请输入剩余座位数:\ scanf(\ printf(\请输入是否满仓(0表示没有满仓1以满仓):\ scanf(\ insert_flight(p,flight_num,start_place,end_place,start_time,end_time,left,price, price_discount,isFull); printf(\增加航班%s成功!\\n\ printf(\是否继续录入航班信息(1表示继续录入;0表示停止录入).\\n\

26

printf(\请输入:\ scanf(\ } }

int flight_num_check(flightnode *h,char *flight_num)//用航班号进行查询 { flightnode *p=h; printf(\航班号\起飞城市\抵达城市\起飞时间\抵达时间\价格\折扣\是否满仓\空座数\ for(;p!=NULL;p=p->next) { if(strcmp(p->flight_num,flight_num)==0) { printf(\p->start_place,p->end_place,p->start_time,p->end_time,p->price,p->price_discount,p->isFull,p->left); return 1; } } printf(\抱歉,没有航班号为%s的航班信息!\\n\ return 0; }

int place_check(flightnode *h,char *start_place,char *end_place)//用起飞抵达城市进行查询 { flightnode *p=h; int mark=0; printf(\航班号\起飞城市\抵达城市\起飞时间\抵达时间\价格\折扣\是否满仓\空座数\ for(;p!=NULL;p=p->next) { if(strcmp(p->start_place,start_place)==0&&strcmp(p->end_place,end_place)==0) { printf(\p->start_place,p->end_place,p->start_time,p->end_time,p->price,p->price_discount,p->isFull,p->left); mark=1; } } if(mark==0) { printf(\抱歉,没有从%s到%s的航班信息!\\n\ return 0; } return 1; }

void check_all_flight(flightnode *h) { flightnode *p=h; int m=0;

27

printf(\航班号\起飞城市\抵达城市\起飞时间\抵达时间\价格\折扣\是否满仓\空座数\ for(;p!=NULL;p=p->next) { printf(\p->start_place,p->end_place,p->start_time,p->end_time,p->price,p->price_discount,p->isFull,p->left); m=1; } if(m==0) printf(\航班信息为空!\\n\}

void flight_check(flightnode *h)//选择使用哪一个函数进行查询 { flightnode *p=h->next; char flight_num[10],start_place[20],end_place[20]; char a;

printf(\请选择航班查询方式:\\n\ printf(\表示按航班号进行查询;\\n\ printf(\表示按起飞抵达城市进行查询;\\n\ printf(\表示浏览全部航班信息.\\n\\t\\t请选择输入:\ a=getch(); printf(\ if(a=='1') { printf(\请输入航班号:\ scanf(\ flight_num_check(p,flight_num); } else if(a=='2') { printf(\请输入起飞城市:\ scanf(\ printf(\请输入抵达城市:\ scanf(\ place_check(p,start_place,end_place); } else if(a=='3') check_all_flight(p); else return; }

int ID_name_check(passengerList *PList,char *name,char *ID_num) { passengernode *p=PList->head->next; int mark=0; printf(\订单号\姓名\证件号\航班号\订票数量\ for(;p!=NULL;p=p->next)

28

{ if(strcmp(p->ID_num,ID_num)==0&&strcmp(p->name,name)==0) { printf(\p->flight_num,p->ticket_num); mark=1; } } if(mark==0) { printf(\抱歉,没有%s,%s的订单信息!\\n\ return 0; } return 1; }

int order_num_check(passengerList *PList,int order_num) { passengernode *p=PList->head->next; printf(\订单号\姓名\证件号\航班号\订票数量\ for(;p!=NULL;p=p->next) { if(p->order_num==order_num) { printf(\p->flight_num,p->ticket_num); return 1; } } printf(\抱歉,没有订单号为%d的订单信息!\\n\ return 0; }

void check_all_passenger(passengerList *PList) { passengernode *p=PList->head->next; int m=0; printf(\订单号\姓名\证件号\航班号\订票数量\ for(;p!=NULL;p=p->next) { printf(\p->flight_num,p->ticket_num); m=1; } if(m==0) printf(\订单信息为空!\\n\}

void passenger_check(passengerList *PList) { char name[20],ID_num[15]; int order_num;

29

char a;

printf(\请选择订单查询方式:\\n\ printf(\表示按客户姓名和证件号进行查询;\\n\ printf(\表示按订单号进行查询;\\n\ printf(\表示查看全部订单信息.\\n\\t\\t请选择输入:\ a=getch(); printf(\ if(a=='1') { printf(\请输入客户姓名:\ scanf(\ printf(\请输入证件号:\ scanf(\ ID_name_check(PList,name,ID_num); } else if(a=='2') { printf(\请输入订单号:\ scanf(\ order_num_check(PList,order_num); } else if(a=='3') check_all_passenger(PList); else return; }

void modify_flight(flightnode *&h,passengerList *&PList) { flightnode *p=h->next; char flight_num[10],start_time[10],end_time[10]; char a; printf(\航线信息修改*************\\n\ printf(\ printf(\ 增加航班-------1 *\\n\ printf(\ 删除航班-------2 *\\n\ printf(\ 修改航班时间---3 *\\n\ printf(\ printf(\请选择:\ a=getch(); printf(\ if(a=='1') add_flight(h); else if(a=='2') delete_flight(h,PList); else if(a=='3') { printf(\请输入要修改的航班的航班号:\ scanf(\ if(flight_num_check(p,flight_num)==1)

30


数据结构课程设计:飞机订票系统设计与实现(里面附有源代码!)(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:公开课2.0李时珍夜宿古寺

相关阅读
本类排行
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 7

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219