数据结构源程序
答案:1 悬赏:40
解决时间 2021-11-08 11:34
- 提问者网友:那叫心脏的地方装的都是你
- 2021-11-07 17:07
数据结构源程序
最佳答案
- 二级知识专家网友:猎心人
- 2021-11-07 17:35
#include#include#define OK 1#define ERROR 0typedef struct airline{ char air_num[8]; char plane_num[8]; char end_place[20]; int total; int left; struct airline *next;}airline;typedef struct customer{ char name[8]; char air_num[8]; int seat_num; struct customer *next;}customer;airline *start_air(){ airline *a; a=(airline*)malloc(sizeof(airline)); if(a==NULL) a->next=NULL; return a;}customer *start_cus(){ customer *c; c=(customer*)malloc(sizeof(customer)); if(c==NULL) c->next=NULL; return c;}airline *modefy_airline(airline *l,char *air_num){ airline *p; p=l->next; for(;p!=NULL;p=p->next) { if(strcmp(air_num,p->air_num)==0) { p->left++; return l; } printf("NO the airline!"); return 0; }}int insert_air(airline **p,char *air_num,char *plane_num,char *end_place,int total,int left){ airline *q; q=(airline*)malloc(sizeof(airline)); strcpy(q->air_num,air_num); strcpy(q->plane_num,plane_num); strcpy(q->end_place,end_place); q->total=total; q->left=left; q->next=NULL; (*p)->next=q; (*p)=(*p)->next; return OK; }int insert_cus(customer **p,char *name,char *air_num,int seat_num){ customer *q; q=(customer*)malloc(sizeof(customer)); strcpy(q->name,name); strcpy(q->air_num,air_num); q->seat_num=seat_num; q->next=NULL; (*p)->next=q; (*p)=(*p)->next; return OK;}int book(airline *a,char *air_num,customer *c,char *name){ airline *p=a; customer *q=c->next; p=a->next; for(;q->next!=NULL;q=q->next){} for(;p->next!=NULL;p=p->next) { if(p->left>0) { printf("Your seat number is %d",(p->total-p->left+1)); insert_cus(&q,name,air_num,p->total-p->left+1); p->left--; return OK; } else { printf("seat is full"); return 0; } }}int del_cus(customer *c,airline *l,char *name){ customer *p,*pr; char air_num[8]; pr=c; p=pr->next; while(p!=NULL) { if(strcmp(p->name,name)==0) { strcpy(air_num,p->air_num); l=modefy_airline(l,air_num); pr->next=p->next; p=pr->next; printf("finish!"); return OK; } pr=pr->next; p=pr->next; } printf("NO the customer!"); return ERROR;}int search_air(airline *head){ airline *p=head->next; printf("air_num plane_num end_place total left\n"); for(;p!=NULL;p=p->next) { printf("%s %-10s %-8s %-8d%-8d\n",p->air_num,p->plane_num,p->end_place,p->total,p->left); } return OK;}int search_cus(customer *head){ struct customer *q=head->next; printf("name air_num seat_num\n"); for(;q!=NULL;q=q->next) { printf("%-8s%-12s%-d\n",q->name,q->air_num,q->seat_num); } return OK;}int creat_air(airline **l){ airline *p=*l; int i=0; char *air_num[3]={"007af","008af","009af"}; char *plane_num[3]={"plane1","plane2","plane3"}; char *end_place[3]={"Beijing","Shanghai","Tianjin"}; int total[3]={100,100,100}; int left[3]={52,54,76}; for(i=0;i
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯