航空订票系统C语言版

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

#include

#include

#include

#include

#define ok 1

#define error 0

#define overflow -2

int select2();

typedef struct plane

{

int fnum;//航班号

char pnum[20];//飞机号

char end[20];//终点

int vote;//票数

int more;//余票

struct plane *next1;

}plane,*linklist1;

typedef struct consumer

{

char name[20];

int fnumber;//航班号

int dnumber;//座位号

struct consumer *next2;

}consumer,*linklist2;

void create_plane(linklist1 &l1,int fnum,char pnum[20],char end[20],int vote,int more)//创建航班列表

{

linklist1 p,q;

q=l1;

p=(linklist1)malloc(sizeof(plane));

p->next1=q->next1;

q->next1=p;

p->fnum=fnum;

strcpy(p->pnum,pnum);

strcpy(p->end,end);

p->vote=vote;

p->more=more;

}

void create_consumer(linklist2 &l2,char name[20],int fnumber,int dnumber)//创建顾客列表

{

linklist2 p,q;

q=l2;

p=(linklist2)malloc(sizeof(consumer));

p->next2=q->next2;

q->next2=p;

strcpy(p->name,name);

p->fnumber=fnumber;

p->dnumber=dnumber;

}

void init_plane(linklist1 &l1)//初始化航空列表

{

create_plane(l1,1101,"plane001","xian",100,51);

create_plane(l1,1102,"plane002","shanghai",100,71);

create_plane(l1,1103,"plane003","beijing",100,30);

}

void init_consumer(linklist2 &l2)//初始化顾客列表

{

create_consumer(l2,"lier",1101,1);

create_consumer(l2,"lisan",1102,5);

create_consumer(l2,"lisi",1103,10);

}

void delete_plane(linklist1 &l1)//取消航班

{

int a;

printf("输入需要取消的航班:");

scanf("%d",&a);

linklist1 p,q;

q=p=l1;

while(a!=q->fnum)

{

p=q;

q=q->next1;

}

p->next1=q->next1;

printf("删除%d成功!\n",q->fnum);

free(q);

}

void delete_consumer(linklist1 &l1, linklist2 &l2)//取消订票{

char a[100];

printf("请输入你的姓名:");

scanf("%s",&a);

linklist2 p,q;

linklist1 s;

s=l1;

q=p=l2;

while(strcmp(a,q->name)!=0)

{

p=q;

q=q->next2;

s=s->next1;

}

++s->more;

p->next2=q->next2;

printf("顾客%s退票成功!\n",q->name);

free(q);

}

void print_plane(linklist1 &l1)//航空列表的输出

{

linklist1 p;

printf("输出航班信息列表:\n\n");

printf(" 航班飞机号终点站总票数剩余票数\n");

p = l1;

while(p->next1!=NULL)

{

p=p->next1;

printf("%10d%10s%10s%10d%10d\n",p->fnum,p->pnum,p->end,p->vote,p->more);

}

printf("\n");

}

void print_consumer(linklist2 &l2)//输出顾客列表

{

linklist2 q;

printf("输出顾客信息列表:\n\n");

printf(" 姓名航班号座位号\n");

q=l2;

while(q->next2!=NULL)

{

q=q->next2;

printf("%10s%10d%10d\n",q->name,q->fnumber,q->dnumber);

}

printf("\n");

}

void print1()//头界面

{

printf(" 计算机科学与技术1001班数据结构课程设计\n");

printf(" 航空订票系统\n");;

printf(" 设计人:温春琰\n");

}

void print2()//主界面

{

printf("*------------------------------*\n");

相关文档
最新文档