1、航班查询系统航班查询系统(代码+截图)程序源代码:# include # include# include #include # include# include # define Null 0struct flight char fltNum15; char StartingPoint 20; char Terminal 20; char DepartureTime8; char ArrivalTime8; char AircraftType10; int price; struct flight * next;void print() printf(*欢迎光临航班查询系统*n); prin
2、tf(|-|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);struct flight * init(int n) int i; struct flight *head,*p,*s; for(i=1;
3、ifltNum); 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=(struct flight*) malloc(sizeof(struct flight); scanf(%s,&s-fltNum); scanf(%s,&s-StartingPoint); scanf(%s,&s-Term
4、inal); 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); return head; void insert(struct flight *head) struct flight *p,*pi; pi=(struct flight*) malloc(sizeof(struct flight); p=
5、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
6、-next!=Null) pi-next=p-next; p-next=pi; else p-next=pi; pi-next=Null; struct flight * delet(struct flight *head,char fltNum15) struct flight *p,*q,*s; p=head; if(head=Null) printf(没有航班信息要删除。n); return head; if(strcmp(p-fltNum,fltNum)=0&p=head) head=p-next; printf(删除成功!n); return head; while(p!=Null)
7、 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); return head;struct flight *bubblesort(struct flight *head) struct flight *p,*q,*tail,*s; tail=NULL; while(head-next!=tail) p=head; q=p-next; while(q-next!=tail)
8、if(strcmp(p-next-fltNum,q-next-fltNum)next; p-next=q-next; q-next=q-next-next; p-next-next=q; q=s; p=p-next; q=q-next; tail=q; return head;struct flight *browse(struct flight *head) struct flight*p; p=head; printf(航班号 起点站 终点站 起飞时间 到达时间 机型 价格n); while(p!=Null) printf(%-8s,p-fltNum); printf(%-10s,p-St
9、artingPoint); 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); return head;struct flight *fltNumSearch(struct flight *head,char fltNum15) struct flight *p,*q; p=head; while(p!=Null) if(strcmp
10、(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(找不到航班信
11、息!n); return head;struct flight *DepartureTimeSearch(struct flight *head,char DepartureTime15) struct flight *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-Termi
12、nal); 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); return head;struct flight *ArrivalTimeSearc(struct flight *head,char ArrivalTime15) struct flight *p,*q; p=head; while(p!=Null) if(s
13、trcmp(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
14、) printf(找不到航班信息!n); return head;struct flight *StartingPointSearch(struct flight *head,char StartingPoint20) struct flight *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); print
15、f(%-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(找不到航班信息!); return head;struct flight *TerminalSearch(struct flight *head,char Terminal15) struct flight *p,*q; p=head; while(p!=N
16、ull) 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)
17、printf(找不到航班信息!n); return head;void Clear() system(pause); system(cls);void menu() printf(请选择:n); printf(*1-按航班号查询*n); printf(*2-按起飞时间查询*n); printf(*3-按到达时间查询*n); printf(*4-按起点站查询*n); printf(*5-按终点站查询*n); printf(*0-返回上一级*n);void main() char ch; int n=0; struct flight *head; print(); while(ch=tolower
18、(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: char fltNum15; printf(请输入要删除航班的航班号:); scanf(%s,&fltNum); system(cls); print(); head=dele
19、t(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: char info20; int m; system(cls); menu(); while(1) scanf(%d,&m); if (m=0) system(cls); print(); break; switch(m) case
20、 1: printf(请输入按航班号:); scanf(%s,&info); system(cls); menu(); head=fltNumSearch(head,info); break; case 2: printf(请输入飞机起飞时间:); scanf(%s,&info); system(cls); menu(); head=DepartureTimeSearch(head,info); break; case 3: printf(请输入飞机降落时间:); scanf(%s,&info); system(cls); menu(); head=DepartureTimeSearch(head,info); break; case 4: printf(请输入起点站:); scanf(%s,&info); system(cls); menu(); head=StartingPointSearch(head,info); break; case 5: 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