当前位置:首页 > 代码 > 正文

航班信息查询系统代码(航班编号查询系统)

admin 发布:2022-12-19 20:00 180


本篇文章给大家谈谈航班信息查询系统代码,以及航班编号查询系统对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

机票售票系统中的HK,HX,HL,TK等等都表示什么意思,它的状态有多少种?都是什么意思?

HK,HX,HL是查询本系统在该次航班上所以订座代码,除此之外还有RR,HN。各个代码表示对应的舱位等级。TK出票时限代码。

Eterm指令很多了,比如:

ADM是查看本次航班座位图

ASR是座位预定

NSSW无烟靠窗座位

MOML穆斯林餐食

DEPA被驱逐出境(有人陪伴)

DEPU被驱逐处境(无人陪伴)

这里只能简单说这些了,因为代码实在太多。

飞机订票系统的源代码

机票预定系统概要设计说明书1.引言

1.1 编写目的

在本机票预定系统项目的前一阶段,也就是需求分析阶段中,已经将系统用户对本系统的需求做了详细的阐述,这些用户需求已经在上一阶段中对航空公司、各旅行社及机场的实地调研中获得,并在需求规格说明书中得到详尽得叙述及阐明。

本阶段已在系统的需求分析的基础上,对机票预定系统做概要设计。主要解决了实现该系统需求的程序模块设计问题。包括如何把该系统划分成若干个模块、决定各个模块之间的接口、模块之间传递的信息,以及数据结构、模块结构的设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有概要设计进行详细的说明。

在下一阶段的详细设计中,程序设计员可参考此概要设计报告,在概要设计对机票预定系统所做的模块结构设计的基础上,对系统进行详细设计。在以后的软件测试以及软件维护阶段也可参考此说明书,以便于了解在概要设计过程中所完成的各模块设计结构,或在修改时找出在本阶段设计的不足或错误。 1.2 项目背景 本项目(机票预定系统)时由浙江航空公司委托,由负责开发。

机票预定系统将由两部分组成:置于个旅行社定票点的前台客户程序,以及置于航空公司的数据库服务器。本系统与其他系统的关系如下: 1.3 定义 1.3.1 专门术语

SQL SERVER: 系统服务器所使用的数据库管理系统(DBMS)。

SQL: 一种用于访问查询数据库的语言

事务流:数据进入模块后可能有多种路径进行处理。

主键:数据库表中的关键域。值互不相同。

外部主键:数据库表中与其他表主键关联的域。

ROLLBACK: 数据库的错误恢复机制。

1

1.3.2 缩写

系统:若未特别指出,统指本机票预定系统。

SQL: Structured Query Language(结构化查询语言)。

ATM: Asynchronous Transfer Mode (异步传输模式)。

1.4 参考资料 以下列出在概要设计过程中所使用到的有关资料:

1. 机票预定系统项目计划任务书 浙江航空公司 1999/3 2.机票预定系统项目开发计划 《》软件开发小组 1999/3

3.需求规格说明书 《》软件开发小组 1999/3

4.用户操作手册(初稿) 《》软件开发小组 1999/4

5.软件工程及其应用 周苏、王文等 天津科学技术出版社 1992/1

6.软件工程 张海藩 清华大学出版社 1990/11

7.Computer Network A.S.Tanenbaun Prentice Hall 1996/01

文档所采用的标准是参照《软件工程导论》沈美明著 的“计算机软件开发文档编写指南”。

2.任务概述

求C语言编程(航班信息查询与检索)

#include "stdio.h"

#include "malloc.h"

#include "string.h"

#define MAXN 100

typedef struct{

char hour[MAXN];

char minute[MAXN];

} time;

typedef struct node

{

char number[MAXN]; //航班号

time start; //起飞时间

time end; //到达时间

char start_station[MAXN]; //起点站

char end_station[MAXN]; //终点站

char type[MAXN]; //飞机型号

char price[MAXN]; //票价

struct node*link;

}NODE;

NODE *create_link_list(int n)

{

int i;

NODE *head,*p,*q;

if(n==0)return(NULL);

head=(NODE*)malloc(sizeof(NODE));

for(i=0;i MAXN;i++)

{

head-number[i]='\0';

head-start.hour[i]='\0';

head-start.minute[i]='\0';

head-end.hour[i]='\0';

head-end.minute[i]='\0';

head-start_station[i]='\0';

head-end_station[i]='\0';

head-type[i]='\0';

head-price[i]='\0';

}

p=head;

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

{

printf("请输入航班号:");

scanf("%s",(p-number));

printf("请输入起飞时间(时 分):");

scanf("%s %s",(p-start.hour),(p-start.minute));

printf("请输入达到时间(时 分):");

scanf("%s %s",(p-end.hour),(p-end.minute));

printf("请输入起点站 终点站:");

scanf("%s %s",(p-start_station),(p-end_station));

printf("请输入飞机型号:");

scanf("%s",(p-type));

printf("请输入票价:");

scanf("%s",(p-price));

printf("\n");

q=(NODE*)malloc(sizeof(NODE));

p-link=q;

p=q;

}

printf("请输入航班号:");

scanf("%s",(p-number));

printf("请输入起飞时间(时 分):");

scanf("%s %s",(p-start.hour),(p-start.minute));

printf("请输入达到时间(时 分):");

scanf("%s %s",(p-end.hour),(p-end.minute));

printf("请输入起点站 终点站:");

scanf("%s %s",(p-start_station),(p-end_station));

printf("请输入飞机型号:");

scanf("%s",(p-type));

printf("请输入票价:");

scanf("%s",(p-price));

printf("\n");

getchar();

p-link=NULL;

return(head);

}

void insert(NODE **p_head,NODE *q)

{

NODE *p;

if(*p_head==NULL)

*p_head=q;

else

{

p=*p_head;

while(p!=NULLp-link!=NULL)

p=p-link;

p-link=q;

}

}

unsigned int countit(NODE* n)//计算链表长度

{

unsigned int counti = 0;

while(n!=NULL)

counti++,n=n-link;

return counti;

}

NODE* getindex(NODE* head, int num);

NODE* getindex(NODE* head, int num)//取得index为num 的节点!

{

if(num0 || numcountit(head))

return NULL;

NODE* rn = head;

while(--num0)

rn = rn-link;

return rn;

}

int binSearch(NODE* n,char *strinput,int low, int high)// 二分查找

{

int i;

int middle = (high+low)/2;

if (high low)

return 0;

if ((i=strcmp(strinput, n-number)) 0)

high= middle;

else if (i 0)

low = middle;

else

{

i = middle;

return i;

}

binSearch(getindex(n,middle),strinput,low,high);

}

int bisect(char a[],int n,char s[MAXN])//二分查找

{

int i,j,m;

i=0;

j=n-1;

while(i =j)

{

m=(i+j)/2;

}

return(-1);

}

NODE *search1(NODE *head,char v[MAXN])//起点站顺序查找

{

for(;head!=NULLstrcmp(head-start_station,v[0]);head=head-link);

return(head);

}

NODE *search2(NODE *head,char w[MAXN])//到达站顺序查找

{

for(;head!=NULLstrcmp(head-end_station,w[0]);head=head-link);

return(head);

}

NODE *search3(NODE *head,char x[MAXN],char y[MAXN])//起飞时间顺序查找

{

for(;head!=NULL(strcmp(head-start.hour,x[0]) || strcmp(head-start.minute,y[0]));head=head-link);

return(head);

}

NODE *search4(NODE *head,char t[MAXN],char u[MAXN])//到达时间顺序查找

{

for(;head!=NULL(strcmp(head-end.hour,t[0]) || strcmp(head-end.minute,u[0]));head=head-link);

return(head);

}

void output(NODE *p)

{

while(p!=NULL)

{

printf("航班信息:\n");

printf("航班号:%s\n",p-number);

printf("起飞时间:%s点%s分,",p-start.hour,p-start.minute);

printf("到达时间:%s点%s分\n",p-end.hour,p-end.minute);

printf("起点站:%s,",p-start_station);

printf("到达站:%s\n",p-end_station);

printf("飞机型号:%s ",p-type);

printf("票价:%s元\n\n",p-price);

p=p-link;

}

}

NODE *rank( NODE *head)

{

NODE *q=0,*p=0,*t,*h1;

h1=head-link;

head-link=NULL;

while(h1!=NULL)

{

t=h1;

h1=h1-link;

p=head;

q=head;

while( p!=NULL strcmp(t-number, p-number)0 )

{

q=p;

p=p-link;

}

if(q == p)

{

t-link=p;

head=t;

}

else

{

t-link=p;

q-link=t;

}

}

return head;

}

int main(int argc, char* argv[])

{

NODE *p,*q,*r;

int a,b,i,j,n;

int count=0;

char o[MAXN];

char s[MAXN];

char v[MAXN];

char w[MAXN];

char x[MAXN];

char y[MAXN];

char t[MAXN];

char u[MAXN];

for(i=0;i MAXN;i++)

{

o[i]='\0';

s[i]='\0';

v[i]='\0';

w[i]='\0';

x[i]='\0';

y[i]='\0';

t[i]='\0';

u[i]='\0';

}

while(true)

{

printf("【航班信息的查询与检索】\n");

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

printf(" 1.建立航班信息\n");

printf(" 2.插入航班信息\n");

printf(" 3.按航班号进行排序 \n");

printf(" 4.航班信息查询\n");

printf(" 5.显示航班信息\n");

printf(" 6.退出本系统\n");

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

scanf("%d",a);

getchar();

switch(a)

{

case 1:

printf("请输入你所要建立的航班信息个数:");

scanf("%d",n);

p=create_link_list(n);

break;

case 2:

q=create_link_list(1);

insert(p,q);

break;

case 3:

p = rank(p);

break;

case 4:

printf("\n1、按照航班号查询.\n");

printf("2、按照起点站查询.\n");

printf("3、按照到达站查询.\n");

printf("4、按照起飞时间查询.\n");

printf("5、按照到达时间查询.\n");

scanf("%d",b);

getchar();

switch(b)

{

case 1:

p=rank(p);

printf("请输入您所要找的航班号:");

scanf("%s",s);

if( binSearch(p,s,1, countit(p)) )

printf("scuess!\n");

break;

case 2:

printf("请输入起点站");

scanf("%s",v[MAXN]);

if(search1(p,v[MAXN])!=NULL)

{

printf("查询成功!\n");

r=search1(p,v[MAXN]);

output(r);

}

else

printf("查询失败,该信息录中没有该起点站!\n");

break;

case 3:

printf("请输入到达站");

scanf("%s",w[MAXN]);

if(search2(p,w[MAXN])!=NULL)

{

printf("查询成功!\n");

r=search2(p,w[MAXN]);

output(r);

}

else

printf("查询失败,该信息录中没有该到达站!\n");

break;

case 4:

printf("请输入起飞时间(时 分)");

scanf("%s %s",x[MAXN],y[MAXN]);

if(search3(p,x[MAXN],y[MAXN])!=NULL)

{

printf("查询成功!\n");

r=search3(p,x[MAXN],y[MAXN]);

output(r);

}

else

printf("查询失败,该信息录中没有该到达站!\n");

break;

case 5:

printf("请输入到达时间");

scanf("%s %s",t[MAXN],u[MAXN]);

if(search4(p,t[MAXN],u[MAXN])!=NULL)

{

printf("查询成功!\n");

r=search4(p,t[MAXN],u[MAXN]);

output(r);

}

else

printf("查询失败,该信息录中没有该到达站!\n");

break;

}

break;

case 5:

output(p);

printf("\n");

break;

case 6:

return(0);

}

}

return(0);

}

航班信息查询系统代码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于航班编号查询系统、航班信息查询系统代码的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/21830.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载