编辑: ZCYTheFirst 2019-07-09

case 4: dingpiao(head);

//订票功能 break;

case 5: tuipiao(head);

//退票功能 break;

case 6: saveHangbanInfo( head );

//保存航班信息 saveClientInfo( head );

//保存顾客信息 break;

case 7: disposeMemory( head );

//释放内存空间 exit(0);

} }while(n>

=1&

&

nnext=NULL;

return p;

} //初始化顾客链表 link initlink() { link p;

p=(link)malloc(sizeof(cnode));

if(p==NULL) { printf( Memory application fail. );

exit(-1);

} p->

next=NULL;

return p;

} //增加航班 void Addhangban(Linklist L) { Linklist p, q;

link h;

char c[10];

p = L;

while( p->

next ) p = p->

next;

do { q = (Linklist)malloc( sizeof(pnode) );

//为航班结点申请内存空间 printf( \t-->

航班号: );

scanf( %d ,&

q->

no);

printf( \t-->

终点站: );

scanf( %s ,q->

destin );

printf( \t-->

总座位: );

scanf( %d ,&

q->

limit);

printf( \t-->

余票数: );

scanf( %d ,&

q->

rest);

q->

next = p->

next;

p->

next = q;

p = q;

h = (link)malloc( sizeof(cnode) );

//为顾客结点申请内存空间 h->

next = NULL;

p->

clist = h;

printf( \t航班添加成功!\n );

printf( ==>

是否继续添加?(y/n)\n );

scanf( %s ,c);

}while(c[0]=='

Y'

||c[0]=='

y'

);

} //取消航班 void Deletehangban(Linklist L) { int no;

Linklist q, p=L;

printf( ==>

请输入航班号: );

scanf( %d ,&

no);

while(p&

&

p->

no!=no) { q=p;

p=p->

next;

} if(p) { if(p->

no==no) { q->

next=p->

next;

printf( \t---航班取消成功!---\n );

} } else printf( \t---对不起,无此航班!---\n );

} //查询功能 void chaxun(Linklist L) { int n;

printf( \t==>

1.通过目的地查询\n );

printf( \t==>

2.通过航班号查询\n );

printf( \t==>

请选择: );

scanf( %d ,&

n);

switch(n) { case 1: mudidchaxun( L );

//调用目的地查询函数 break;

case 2: hangbanhchaxun( L );

//调用航班号查询函数 break;

} } //订票功能 void dingpiao(Linklist L) { int count=0;

Linklist p = L->

next;

link h1, h2;

char c[30];

char s[15];

int d;

//列出到达同以目的地的所有航班 printf( ==>

请输入终点站: );

scanf( %s ,c);

while(p) { if(strcmp(p->

destin,c)==0) { printf( \t====航班信息====\n );

printf( \t航班号:%6d ,p->

no);

printf( \t总座位:%6d ,p->

limit);

printf( \t余票数:%6d\n ,p->

rest);

count++;

} p=p->

next;

} if(count==0) { printf( \t---对不起,无此航班!---\n );

return;

} else if(count==1) { p=L->

next;

while(p&

&

strcmp(p->

destin,c)!=0) p=p->

next;

} else { //根据航班号确定所要找的航班 printf( ==>

请输入你选择的航班号: );

scanf( %d ,&

d);

p=L->

next;

while(p) { if(p->

no==d) { printf( \t====航班信息====\n );

printf( \t航班号:%6d ,p->

no);

printf( \t总座位:%6d ,p->

limit);

printf( \t余票数:%6d\n ,p->

rest);

break;

} p=p->

next;

} if(p==0) { printf( \t---对不起,无此航班!---\n );

return ;

} } printf( \t---开始订票---\n );

h1 = p->

clist;

while(h1->

next) h1 = h1->

next;

//指向顾客链表的结尾 do { if(p->

rest==0) { printf( \t---已无余票---\n );

break;

} h2=(link)malloc(sizeof(cnode));

下载(注:源文件不在本站服务器,都将跳转到源网站下载)
备用下载
发帖评论
相关话题
发布一个新话题