航班查询系统.docx

上传人:b****5 文档编号:11704539 上传时间:2023-03-30 格式:DOCX 页数:18 大小:108.21KB
下载 相关 举报
航班查询系统.docx_第1页
第1页 / 共18页
航班查询系统.docx_第2页
第2页 / 共18页
航班查询系统.docx_第3页
第3页 / 共18页
航班查询系统.docx_第4页
第4页 / 共18页
航班查询系统.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

航班查询系统.docx

《航班查询系统.docx》由会员分享,可在线阅读,更多相关《航班查询系统.docx(18页珍藏版)》请在冰豆网上搜索。

航班查询系统.docx

航班查询系统

航班查询系统(代码+截图)

程序源代码:

#include

#include

#include

#include

#include

#include

#defineNull0

structflight

{

charfltNum[15];

charStartingPoint[20];

charTerminal[20];

charDepartureTime[8];

charArrivalTime[8];

charAircraftType[10];

intprice;

structflight*next;

};

voidprint()

{

printf("**************欢迎光临航班查询系统******************\n");

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

printf("|请输入选项编号(0-8)|\n");

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

printf("|1--录入航班信息|\n");

printf("|2--添加新航班信息|\n");

printf("|3--删除航班信息|\n");

printf("|4--排序航班信息|\n");

printf("|5--浏览所有航班信息|\n");

printf("|6--查询航班信息|\n");

printf("|7--退出航班查询系统|\n");

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

}

structflight*init(intn)

{

inti;

structflight*head,*p,*s;

for(i=1;i<=n;i++)

{

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

if(i==1)

{

p=(structflight*)malloc(sizeof(structflight));

scanf("%s",&p->fltNum);

scanf("%s",&p->StartingPoint);

scanf("%s",&p->Terminal);

scanf("%s",&p->DepartureTime);

scanf("%s",&p->ArrivalTime);

scanf("%s",&p->AircraftType);

scanf("%d",&p->price);

head=p;

getchar();

}

else

{

s=(structflight*)malloc(sizeof(structflight));

scanf("%s",&s->fltNum);

scanf("%s",&s->StartingPoint);

scanf("%s",&s->Terminal);

scanf("%s",&s->DepartureTime);

scanf("%s",&s->ArrivalTime);

scanf("%s",&s->AircraftType);

scanf("%d",&s->price);

p->next=s;

p=s;

getchar();

}

}

s->next=Null;

if(head!

=NULL)

printf("录入信息成功!

\n");

returnhead;

}

voidinsert(structflight*head)

{

structflight*p,*pi;

pi=(structflight*)malloc(sizeof(structflight));

p=head;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

scanf("%s",&pi->fltNum);

scanf("%s",&pi->StartingPoint);

scanf("%s",&pi->Terminal);

scanf("%s",&pi->DepartureTime);

scanf("%s",&pi->ArrivalTime);

scanf("%s",&pi->AircraftType);

scanf("%d",&pi->price);

if(head==Null)

{

head=pi;

pi->next=Null;

}

else

{

while(p->next!

=Null)

{

p=p->next;

}

if(p->next!

=Null)

{

pi->next=p->next;

p->next=pi;

}

else

{

p->next=pi;

pi->next=Null;

}

}

}

structflight*delet(structflight*head,charfltNum[15])

{

structflight*p,*q,*s;

p=head;

if(head==Null)

{

printf("没有航班信息要删除。

\n");

returnhead;

}

if(strcmp(p->fltNum,fltNum)==0&&p==head)

{

head=p->next;

printf("删除成功!

\n");

returnhead;

}

while(p!

=Null)

{

if(strcmp(p->next->fltNum,fltNum)==0)

{

s=p;

q=p->next;

p->next=q->next;

free(q);

}

p=p->next;

}

if(s==Null)

printf("找不到相应的航班信息。

\n");

else

printf("删除成功!

\n");

returnhead;

}

structflight*bubblesort(structflight*head)

{

structflight*p,*q,*tail,*s;

tail=NULL;

while(head->next!

=tail)

{

p=head;

q=p->next;

while(q->next!

=tail)

{

if(strcmp(p->next->fltNum,q->next->fltNum)<0)

{

s=q->next;

p->next=q->next;

q->next=q->next->next;

p->next->next=q;

q=s;

}

p=p->next;

q=q->next;

}

tail=q;

}

returnhead;

}

structflight*browse(structflight*head)

{

structflight*p;

p=head;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

while(p!

=Null)

{

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

p=p->next;

printf("\n");

}

returnhead;

}

structflight*fltNumSearch(structflight*head,charfltNum[15])

{

structflight*p,*q;

p=head;

while(p!

=Null)

{

if(strcmp(p->fltNum,fltNum)==0)

{

q=p;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

printf("\n");

}

p=p->next;

}

if(q==NULL)

printf("找不到航班信息!

\n");

returnhead;

}

structflight*DepartureTimeSearch(structflight*head,charDepartureTime[15])

{

structflight*p,*q;

p=head;

while(p!

=Null)

{

if(strcmp(p->DepartureTime,DepartureTime)==0)

{

q=p;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

printf("\n");

}

p=p->next;

}

if(q==NULL)

printf("找不到航班信息!

\n");

returnhead;

}

structflight*ArrivalTimeSearc(structflight*head,charArrivalTime[15])

{

structflight*p,*q;

p=head;

while(p!

=Null)

{

if(strcmp(p->ArrivalTime,ArrivalTime)==0)

{

q=p;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

printf("\n");

}

p=p->next;

}

if(q==NULL)

printf("找不到航班信息!

\n");

returnhead;

}

structflight*StartingPointSearch(structflight*head,charStartingPoint[20])

{

structflight*p,*q;

p=head;

while(p!

=Null)

{

if(strcmp(p->StartingPoint,StartingPoint)==0)

{

q=p;

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

printf("\n");

}

p=p->next;

}

if(q==NULL)

printf("找不到航班信息!

");

returnhead;

}

structflight*TerminalSearch(structflight*head,charTerminal[15])

{

structflight*p,*q;

p=head;

while(p!

=Null)

{

if(strcmp(p->Terminal,Terminal)==0)

{

printf("航班号起点站终点站起飞时间到达时间机型价格\n");

printf("%-8s",p->fltNum);

printf("%-10s",p->StartingPoint);

printf("%-10s",p->Terminal);

printf("%-12s",p->DepartureTime);

printf("%-12s",p->ArrivalTime);

printf("%-8s",p->AircraftType);

printf("%-5d",p->price);

printf("\n");

}

p=p->next;

}

if(q==NULL)

printf("找不到航班信息!

\n");

returnhead;

}

voidClear()

{

system("pause");

system("cls");

}

voidmenu()

{

printf("请选择:

\n");

printf("***1--按航班号查询***\n");

printf("***2--按起飞时间查询***\n");

printf("***3--按到达时间查询***\n");

printf("***4--按起点站查询***\n");

printf("***5--按终点站查询***\n");

printf("***0--返回上一级***\n");

}

voidmain()

{

charch;

intn=0;

structflight*head;

print();

while((ch=tolower(getchar()))!

='7')

{

switch(ch)

{

case'1':

{

printf("请问有多少个航班的资料需要输入?

:

\n");

scanf("%d",&n);

system("cls");

print();

head=init(n);

break;

}

case'2':

{

printf("请输入航班信息:

\n");

insert(head);

system("cls");

print();

printf("插入成功!

");

break;

}

case'3':

{

charfltNum[15];

printf("请输入要删除航班的航班号:

");

scanf("%s",&fltNum);

system("cls");

print();

head=delet(head,fltNum);

break;

}

case'4':

{

printf("排序结果如下:

\n");

head=bubblesort(head);

system("cls");

print();

head=browse(head);

break;

}

case'5':

{

system("cls");

print();

head=browse(head);

break;

}

case'6':

{

charinfo[20];

intm;

system("cls");

menu();

while

(1)

{

scanf("%d",&m);

if(m==0)

{

system("cls");

print();

break;

}

switch(m)

{

case1:

{

printf("请输入按航班号:

");

scanf("%s",&info);

system("cls");

menu();

head=fltNumSearch(head,info);

break;

}

case2:

{

printf("请输入飞机起飞时间:

");

scanf("%s",&info);

system("cls");

menu();

head=DepartureTimeSearch(head,info);

break;

}

case3:

{

printf("请输入飞机降落时间:

");

scanf("%s",&info);

system("cls");

menu();

head=DepartureTimeSearch(head,info);

break;

}

case4:

{

printf("请输入起点站:

");

scanf("%s",&info);

system("cls");

menu();

head=StartingPointSearch(head,info);

break;

}

case5:

{

printf("请输入终点站:

");

scanf("%s",&info);

system("cls");

menu();

head=TerminalSearch(head,info);

break;

}

}

}

default:

break;

}

}

}

if((ch=tolower(getchar()))='7')

printf("安全退出系统!

");

}

运行结果截图:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 入党转正申请

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1