?? sfile.cpp
字號:
#include "stdafx.h"
#include "stdio.h"
#include "stdlib.h"
#include "string.h"
#include "SFile.h"
//#include "Keshe_flightView.h"
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("你的座位號是: %d",(p->total-p->left+1));
insert_cus(&q,name,air_num,p->total-p->left+1);
p->left--;
return OK;
}
else
{
printf("座位已滿!");
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("已完成!");
return OK;
}
pr=pr->next;
p=pr->next;
}
printf("沒有此乘客!");
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 search_one_cus(customer *c,char *cus_name)
{
customer *p;
p=c->next;
while (p)
{
if(strcmp(p->name,cus_name)==0)
{
printf("姓名:%s 航班號:%s 座位號:%d",p->name,p->air_num,p->seat_num);
return OK;
}
p=p->next;
}
printf("沒有此乘客!");
return ERROR;
}
int creat_air(airline **l)
{
airline *p=*l;
int i=0;
char *air_num[4] = {"0007af","0008af","0009af","0010af"};
char *plane_num[4] = {"plane1","plane2","plane3","plane4"};
char *end_place[4] = {"Beijing","Shanghai","Tianjin","荊州"};
int total[4] = {100,100,100,100};
int left[4] = {52,54,76,50};
for(i=0;i<4;i++)
insert_air(&p,air_num[i],plane_num[i],end_place[i],total[i],left[i]);
return OK;
}
int creat_cus(customer **l)
{
customer *p=*l;
int i=0;
char *name[4] = {"zhsan","lisi","wangwu","宋健"};
char *air_num[4] = {"0007af","0008af","0009af","0010af"};
int seat_num[4] = {2,5,7,1};
for(i=0;i<4;i++)
insert_cus(&p,name[i],air_num[i],seat_num[i]);
return OK;
}
/*void main()
{
int t=1;
customer *cus=start_cus();
airline *air=start_air();
char name[8],air_num[8],ch;
creat_air(&air);
creat_cus(&cus);
printf("\n");
printf("*********************************\n");
printf("* 歡迎進入民航訂票系統! *\n");
printf("* 訂票請輸入1 *\n");
printf("* 退票請輸入2 *\n");
printf("* 查詢乘客列表請輸入3 *\n");
printf("* 乘客查詢請輸入4 *\n");
printf("* 退出請輸入5 *\n");
printf("*********************************\n");
while(t==1)
{
ch=getchar();//輸入
if(ch=='1')//訂票
{
printf("請輸入航班號(0007af-0010af):");
scanf("%s",air_num);
printf("請輸入您的姓名:");
scanf("%s",name);
book(air,air_num,cus,name);
}
else
if(ch=='2')//退票
{
printf("請輸入要退票的乘客姓名:");
scanf("%s",name);
del_cus(cus,air,name);
}
else
if(ch=='3')//查詢
{
search_air(air);
printf("\n");
search_cus(cus);
}
else
if(ch=='4')
{
printf("請輸入您要查詢的乘客姓名:");
scanf("%s",name);
search_one_cus(cus,name);
}
else
if(ch=='5')
t=0;
}
}*/
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -