搜档网
当前位置:搜档网 › 航空售票系统

航空售票系统

航空售票系统
航空售票系统

**理工大学

《C语言程序设计》

题目航空售票管理程序

指导教师:**

姓名:**

学号:2011070**

班级:计算机科学与技术111

专业:计算机科学与技术

地点:机房201

时间:2012-06-25 至2012-06-30

一、内容

航空票务管理程序:本程序主要实现了查询航班、购买机票、退订机票。通过选项提示来操作程序实现相关的功能。

二、上机环境

操作系统:Windows7 开发工具:VC6.0

三、函数调用关系图

四、各函数功能说明

void main() 主函数

void menu(struct flt *pr,struct ticket *pk); 显示主菜单的函数

void check(struct flt *pr,struct ticket *pk); 查询航班的函数 void buy(struct flt *pr,struct ticket *pk); 购买机票的函数 void returnt(struct flt *pr,struct ticket *pk); 退订机票的函数

五、算法描述

算法描述:

#include #include

main()

Menu()

1

查 询

check()

2

Buy()

3

退

Returnt()

4

退出

直接退出

Menu()

Menu()

Menu()

#include

#define NUM 100

struct flt //记录各个航班的信息

{ char airport[2][10]; //起点、终点

char Fltno[20]; //航班号

char date[20];

char Time1[100],Time2[100]; //起飞时间、到达时间

int Tounumb,Gongnumb,Jingnumb; //三个不同类型的机票的数量int Touprice,Gongprice,Jingprice; //三种机票的价格

};

struct ticket //机票信息

{ char buyer[20]; //购票者姓名

char ID[20]; //购买者身份证号

char source[20],dest[20]; //始点、终点char fltno; //航班号

char time1,time2; //起飞时间、到达时间int tounumb,gongnumb,jingnumb; //三个不同类型的机票的数量float touprice,gongprice,jingprice; //三种机票的价格

};

void menu(struct flt *pr,struct ticket *pk); //显示主菜单的函数

void check(struct flt *pr,struct ticket *pk); //查询航班的函数

void buy(struct flt *pr,struct ticket *pk); //购买机票的函数

void returnt(struct flt *pr,struct ticket *pk); //退订机票的函数void main() //主函数

{

struct ticket cheque; //定义结构体变量

struct ticket *pk; // 定义结构体指针struct flt airportinfor[NUM]={ //对结构体进行初始化{"qingdao","beijing","f111",

"2012.05.01","2012年05月01日12时00分",

"2012年05月01日15时00分",100,100,100,1000,800,500},

{"qingdao","shanghai","f112","2012.05.01",

"2012年05月01日12时00分",

"2012年05月01日16时00分",100,100,100,1000,800,500},

{"beijing","shanghai","f113","2012.05.01",

"2012年05月01日12时00分",

"2012年05月01日18时00分",100,100,100,1800,1500,1000}};

struct flt *pr; //定义结构体指针pr=airportinfor; // 让指针pr指向airportinfor pk=&cheque; //让指针pk指向cheque

menu(pr,pk); //调用菜单函数

}

void menu(struct flt *pr,struct ticket *pk) //显示主菜单的函数{ int a;

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

printf("\n\n-------欢迎来到青岛流亭机场--------\n"); //输出菜单选项printf(" 1,查询机票\n");

printf(" 2,购买机票\n");

printf(" 3,退订机票\n");

printf(" 4,退出程序\n");

printf(" 请输入序列号:");

scanf("%d",&a); // 输入选项

if(a==1) //判断是否查询机票

{ system("cls"); // 清屏

check(pr,pk); //调用查询机票的函数 menu(pr,pk); //调用菜单函数返回首页

}

else if(a==2) //判断是否购买机票buy(pr,pk); //调用购买机票的函数else if(a==3) // 判断是否退订机票returnt(pr,pk); // 调用退订机票的函数else if(a==4) // 判断是否退出程序

{ system("cls"); // 清屏

printf(" 谢谢使用!\n");

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

}

Else //输入不在1~4范围内重新输入

{ system("cls");

printf("\n 输入有误!请重新输入!");

menu(pr,pk);

}

}

void check(struct flt *pr,struct ticket *pk) //查询航班的函数{

int i,flag=0; // i用于for 循环flag作为标志 char sour[10],dest[10]; //定义字符数组用于接收地址 char day[20]; // 定义字符数组用于接收输入的日期printf("请输入起点: ");

scanf("%s",sour);

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

scanf("%s",dest);

printf("请输入日期: ");

scanf("%s",day);

if(day[4]!=46||day[7]!=46) //确保日期输入正确{

do

{ printf("日期格式输入有误,请重新输入!(年月日之用点“.”隔开)\n");

printf("请输入日期: ");

scanf("%s",day);

}while(day[4]!=46&&day[7]!=46);

}

for(i=0;i

if(strcmp(pr[i].airport[0],sour)==0)

if(strcmp(pr[i].airport[1],dest)==0)

if(strcmp(pr[i].date,day)==0)

{

strcpy(pk->source,pr[i].airport[0]);

printf("\n航班:%s\n",pr[i].Fltno); // 查找成功后输出航

班信息

printf("出发地-------->目的地\n");

printf("%s-------->",pr[i].airport[0]);

printf("%s\n",pr[i].airport[1]);

printf("起飞时间 %s\n",pr[i].Time1);

printf("到达时间 %s\n",pr[i].Time2);

printf("头等舱公务舱经济舱\n");

printf("%d张%d张%d张\n",pr[i].Tounumb,pr[i].Gongnumb,pr[i].Jingnumb);

printf("%d元%d元%d元\n",pr[i].Touprice,pr[i].Gongprice,pr[i].Jingprice);

flag=1;

break;

}

if(flag==0)

{ printf("\n 对不起,未找得你要的航班!\n");

strcpy(pk->source,"0");

return;

}

}

void buy(struct flt *pr,struct ticket *pk) //购买机票的函数

{

int choice;

int buynumber;

system("cls"); //清屏

printf("请输入您的姓名: "); //输入购买者信息

scanf("%s",pk->buyer);

printf("请输入您的身份证号: ");

if(strlen(pk->ID)!=5) //判断输入的位数是否正确do{ printf(" 身份证位数有误!请重新输入!\n");

printf("请输入您的身份证号: ");

scanf("%s",pk->ID);

}while(strlen(pk->ID)!=5);

scanf("%s",pk->ID);

check(pr,pk); //调用查询航班的函数

if(strcmp(pk->source,"0")==0) // 查找失败返回首页{

printf(" 未找到您要的航班!\n");

menu(pr,pk);

}

Else // 选择机票类型

{ printf("\n请输入您购买类型( 1.头等舱 2.公务舱 3.经济舱 ): ");

scanf("%d",&choice);

if(choice<1||choice>3)

Do // 用于保证输入的选项有意义

{

printf("\n 输入有误!请重新输入!\n");

printf("\n请输入您购买类型( 1.头等舱 2.公务舱 3.经济舱 ):");

scanf("%d",&choice);

}while(choice<1||choice>3);

printf("请输入您购买的数量: "); // 输入购买的数量 scanf("%d",&buynumber);

if(buynumber==0)

menu(pr,pk);

else

switch(choice)

{ case 1:

if(pr->Tounumb>=buynumber) //判断机票是否足够

{

printf("\n 购买成功!返回首页!");

pk->tounumb=buynumber;

pr->Tounumb-=buynumber; // 改变机票剩余

menu(pr,pk);

}

else

{

printf("\n 机票已售完或不足!返回首页!");

menu(pr,pk);

}break;

case 2:

if(pr->Gongnumb>=buynumber) // 判断机票是否足

{

printf(" 购买成功!返回首页!");

pk->gongnumb=buynumber;

pr->Gongnumb-=buynumber; // 改变机票剩余数

menu(pr,pk);

}

else

{

printf("\n 机票已售完或不足!返回首页!");

menu(pr,pk);

}break;

case 3:

if(pr->Jingnumb>=buynumber) // 判断机票是否

足够

{

printf("\n 购买成功!返回首页!");

pk->jingnumb=buynumber;

pr->Jingnumb-=buynumber; // 改变机票剩余

menu(pr,pk);

}

else

{

printf("\n 机票已售完或不足!返回首页!");

menu(pr,pk);

}

}

}

}

void returnt(struct flt *pr,struct ticket *pk) //退订机票的

函数

{

int i,choice1,choice2,buynumber;

char sour[20];

char dest[20];

char day[20];

system("cls");

printf("你确定要退票吗? 1.是 2.否 ");

scanf("%d",&choice1);

if(choice1<1||choice1>2) // 用于保证输入的选项有意义do

{

printf("\n 输入有误!请重新输入!\n");

printf("你确定要退票吗? 1.是 2.否 "); //确认是否退票 scanf("%d",&choice1);

}while(choice1<1||choice1>2);

if(choice1==1)

{ printf("请输入起点: "); // 输入要退机票的信息

scanf("%s",sour);

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

scanf("%s",dest);

printf("请输入起飞时的日期: ");

scanf("%s",day);

if(day[4]!=46||day[7]!=46) //确保日期输入正确{

do

{ printf(" 日期格式输入有误,请重新输入!(年月日之用点“.”隔开)\n");

printf("请输入日期: ");

scanf("%s",day);

}while(day[4]!=46&&day[7]!=46);

}

for(i=0;i

if(strcmp(pr[i].airport[1],dest)==0)

if(strcmp(pr[i].date,day)==0)

{ printf("\n请输入您机票类型( 1.头等舱 2.公务舱 3.经济

舱 ): ");

scanf("%d",&choice2);

if(choice2<1||choice2>3) // 用于保证输入的选项有意义

Do

{

printf("\n 输入有误!请重新输入!\n");

printf("\n请输入您机票类型( 1.头等舱 2.公务舱 3.经

济舱 ): ");

scanf("%d",&choice2);

}while(choice2<1||choice2>3);

printf("\n请输入您退票的数量: ");

scanf("%d",&buynumber);

if(buynumber==0)

menu(pr,pk);

else

switch(choice2)

{ case 1:

printf("\n 退票成功!返回首页!");

pr->Tounumb+=buynumber; // 修改余票数量

menu(pr,pk);

break;

case 2:

printf("\n 退票成功!返回首页!");

pr->Gongnumb+=buynumber; // 修改余票数量

menu(pr,pk);

break;

case 3:

printf("\n 退票成功!返回首页!");

pr->Jingnumb+=buynumber; // 修改余票数

menu(pr,pk);

}

}

}

else

{ system("cls");

menu(pr,pk);

}

六、程序运行效果图

开始进入程序:

当输入1时:

当输入2时:

当输入3时:

当输入4时:

七、总结

经过一周对C语言课程设计(航空票务管理程序)的研究主要有以下几点感受:首先,C语言课程设计很好的反映了自己这一学期对C语言基础知识的掌握情况,让自己清醒的认识到自己的真实水平。不动手不知道,自己亲自动手设计程序时才感觉到知识的不扎实。有的知识虽然已经学过,但是用起来还是感觉有点模糊,这也算是给自己的一个警醒吧。

另外,编写程序时有些自己想要编写的功能用已学的知识不能实现,这样就要去上网或查阅课外书来学习一些其他的知识,我感觉这样很好。这样不仅会拓宽自己的知识面,还会提高自己的自学能力。同时,宿舍里的同学集体讨论如何去实现各种功能,各自发表看法彼此交流也是一种学习的过程。

最深刻的感受就是编写程序过程中的酸甜苦辣。刚开始构思时漏洞百出,程序出错。但是令人高兴的是通过不断的调试程序,不断的出错,然后不断的修改,从这过程中学到了一些调试程序的技巧。虽然有些语句没有语法错误,但是如果语句顺序不对也会提示错误,例如error C2143: syntax error : missing ';' before 'type'error C2275: 'FILE' : illegal use of this type as an expression等错误提示。经过痛苦又快乐的调试过程之后,当自己自如的运行着程序时成就感十足啊!顿时感觉之前付出的一切值了,实在是值了。

总之,我感觉C语言课程设计的重要性不比C语言课堂差。课程设计提高了我们的动手能力,我们能将课本上的死知识灵活地应用到生活当中,还有就是能够感受到十足的成就感,增加学习专业课的兴趣。期待下次课程设计,爱课程设计!

八、参考文献

李春葆、增平、喻丹丹.C语言程序设计教程(第2版).清华大学出版社,2011

九、程序清单

#include

#include

#include

#define NUM 100

Struct flt //记录各个航班的信息

{ char airport[2][10]; //起点、终点Char Fltno[20]; //航班号

char date[20];

Char Time1[100],Time2[100];

//起飞时间、到达时间

int Tounumb,Gongnumb,Jingnumb;

//三个不同类型的机票的数量int Touprice,Gongprice,Jingprice;

//三种机票的价格};

Struct ticket //机票信息{ char buyer[20]; //购票者姓名Char ID[20]; //购买者身份证号

Char source[20],dest[20]; //始点、终点

Char fltno; //航班号

Char time1,time2; //起飞时间、到达时间

int tounumb,gongnumb,jingnumb;

//三个不同类型的机票的数量float touprice,gongprice,jingprice; //三种机票的价格

};

void menu(struct flt *pr,struct ticket *pk);

//显示主菜单的函数void check(struct flt *pr,struct ticket *pk);

//查询航班的函数void buy(struct flt *pr,struct ticket *pk);

//购买机票的函数void returnt(struct flt *pr,struct ticket *pk);

//退订机票的函数V oid main() //主函数{

struct ticket cheque;

struct ticket *pk;

struct flt airportinfor[NUM]={

{"qingdao","beijing","f111","2012.05.01","2012

年05月01日12时00分","2012年05月01日15时00分",100,100,100,1000,800,500},

{"qingdao","shanghai","f112","2012.05.01","20 12年05月01日12时00分","2012年05月01日16时00分",100,100,100,1000,800,500},

{"beijing","shanghai","f113","2012.05.01","201 2年05月01日12时00分","2012年05月01日18时00分",100,100,100,1800,1500,1000}};

struct flt *pr;

pr=airportinfor;

pk=&cheque;

menu(pr,pk);

}

void menu(struct flt *pr,struct ticket *pk)

//显示主菜单的函数{ int a;

printf("\n

******************************************* ***********************");

printf("\n\n -------------------欢迎来到青岛

流亭机场-----------------------\n\n\n");

printf(" 1,查询机票\n");

printf(" 2,购买机票\n");

printf(" 3,退订机票\n");

printf(" 4,退出程序\n");

printf(" 请输入序列号:");

scanf("%d",&a);

if(a==1)

{ system("cls");

check(pr,pk);

menu(pr,pk);

}

else if(a==2)

buy(pr,pk);

else if(a==3)

returnt(pr,pk);

else if(a==4)

{ system("cls");

printf("\n 谢谢使用!\n");

printf("\n

******************************************* ***********************");

}

else

{ system("cls");

printf("\n 输入有误!请重新输入!");

menu(pr,pk);

}

}

void check(struct flt *pr,struct ticket *pk)

//查询航班的函数{

int i,flag=0;

char sour[10],dest[10];

char day[20];

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

scanf("%s",sour);

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

scanf("%s",dest);

printf("请输入日期: ");

scanf("%s",day);

if(day[4]!=46||day[7]!=46)

{

do

{ printf(" 日期格式输入有误,请重新输入!(年月日之用点“.”隔开)\n");

printf("请输入日期: ");

scanf("%s",day);

}while(day[4]!=46&&day[7]!=46);

}

for(i=0;i

if(strcmp(pr[i].airport[0],sour)==0)

if(strcmp(pr[i].airport[1],dest)==0)

if(strcmp(pr[i].date,day)==0)

{

strcpy(pk->source,pr[i].airport[0]);

printf("\n航班:%s\n",pr[i].Fltno);

printf("出发地-------->目的地\n");

printf("%s-------->",pr[i].airport[0]);

printf("%s\n",pr[i].airport[1]);

printf("起飞时间

%s\n",pr[i].Time1);

printf("到达时间

%s\n",pr[i].Time2);

printf("头等舱公务舱

经济舱\n");

printf("%d张%d张%d张\n",pr[i].Tounumb,pr[i].Gongnumb,pr[i].Jingnumb);

printf("%d元%d元%d元\n",pr[i].Touprice,pr[i].Gongprice,pr[i].Jingprice);

flag=1;

break;

}

if(flag==0)

{ printf("\n对不起未找得你要的航班!\n");

strcpy(pk->source,"0");

return;

}

}

void buy(struct flt *pr,struct ticket *pk)

//购买机票的函数

{

int choice;

int buynumber;

system("cls");

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

scanf("%s",pk->buyer);

printf("请输入您的身份证号: ");

scanf("%s",pk->ID);

if(strlen(pk->ID)!=5)

do{ printf(" 身份证位数有误!请重新

输入!\n");

printf("请输入您的身份证号: ");

scanf("%s",pk->ID);

}while(strlen(pk->ID)!=5);

check(pr,pk);

if(strcmp(pk->source,"0")==0)

{

printf(" 未找到您要的航班!\n");

menu(pr,pk);

}

else

{ printf("\n请输入您购买类型( 1.头等舱

2.公务舱

3.经济舱): ");

scanf("%d",&choice);

if(choice<1||choice>3)

do

{

printf("\n输入有误!请重新输入!\n");

printf("\n请输入您购买类型( 1.头等

舱 2.公务舱 3.经济舱): ");

scanf("%d",&choice);

}while(choice<1||choice>3);

printf("\n请输入您购买的数量: ");

scanf("%d",&buynumber);

if(buynumber==0)

menu(pr,pk);

else

switch(choice)

{ case 1:

if(pr->Tounumb>=buynumber)

{

printf("\n 购买成功!返回首页!");

pk->tounumb=buynumber;

pr->Tounumb-=buynumber;

menu(pr,pk);

}

else

{

printf("\n 机票已售完或

不足!返回首页!");

menu(pr,pk);

}break;

case 2:

if(pr->Gongnumb>=buynumber)

{

printf(" 购买成功!返回

首页!");

pk->gongnumb=buynumber;

pr->Gongnumb-=buynumber;

menu(pr,pk);

}

else

{

printf("\n机票已售完或

不足!返回首页!");

menu(pr,pk);

}break;

case 3:

if(pr->Jingnumb>=buynumber)

{

printf("\n购买成功!返回

首页!");

pk->jingnumb=buynumber;

pr->Jingnumb-=buynumber;

menu(pr,pk);

}

else

{

printf("\n机票已售完或

不足!返回首页!");

menu(pr,pk);

}

}

}

}

void returnt(struct flt *pr,struct ticket *pk) //退订机票的函数

{

int i,choice1,choice2,buynumber;

char sour[20];

char dest[20];

char day[20];

system("cls");

printf("你确定要退票吗?1.是2.否");

scanf("%d",&choice1);

if(choice1<1||choice1>2)

do

{

printf("\n输入有误!请重新输入!\n");

printf("你确定要退票吗1.是2.否");

scanf("%d",&choice1);

}while(choice1<1||choice1>2);

if(choice1==1)

{ printf("请输入起点: ");

scanf("%s",sour);

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

scanf("%s",dest);

printf("请输入起飞时的日期: ");

scanf("%s",day);

if(day[4]!=46||day[7]!=46)

{

do

{ printf(" 日期格式输入有误,请重新

输入!(年月日之用点“.”隔开)\n");

printf("请输入日期: ");

scanf("%s",day);

}while(day[4]!=46&&day[7]!=46);

}

for(i=0;i

if(strcmp(pr[i].airport[0],sour)==0)

if(strcmp(pr[i].airport[1],dest)==0)

if(strcmp(pr[i].date,day)==0)

{ printf("\n请输入您机票类型( 1.头等舱 2.公务舱 3.经济舱): ");

scanf("%d",&choice2);

if(choice2<1||choice2>3)

do

{

printf("\n输入有误!请

重新输入!\n");

printf("\n请输入您机票类型( 1.头等舱 2.公务舱 3.经济舱): ");

scanf("%d",&choice2);

}while(choice2<1||choice2>3);

printf("\n请输入您退票的数

量: ");

scanf("%d",&buynumber);

if(buynumber==0)

menu(pr,pk);

else

switch(choice2)

{ case 1:

printf("\n 退票成功!返

回首页!\n");

pr->Tounumb+=buynumber;

menu(pr,pk);

break;

case 2:

printf("\n 退票成功!返回首

页!\n");

pr->Gongnumb+=buynumber;

menu(pr,pk);

break;

case 3:

printf("\n退票成功!返回首

页!\n");

pr->Jingnumb+=buynumber;

menu(pr,pk);

}

}

}

else

{ system("cls");

menu(pr,pk);

}

}

航空订票系统开发说明文档

航空订票系统开发说明文档V1.0 姓名:张敬学号:1203121790 1开发环境搭建过程 1.1 软件下载 开发环境所使用的软件名称及其版本信息如下表所示: 软件名称版本信息 JDK jdk1.7.0_01 Tomcat 6.0.35 MyEclipse 10.0 Axis2 axis2-1.6.2-bin axis2-1.6.2-war axis2-eclipse-codegen-plugin-1.6.2 axis2-eclipse-service-plugin-1.6.2 1.2 搭建环境 1. 安装JDK; 环境变量配置如下图1-1: (1)JA V A_HOME:新建一个变量名JA V A_HOME,并把变量值写成C:\Program Files\Java\jdk1.7.1(装JDK时的路径); (2)配置PATH:在系统变量里编辑一个变量名Path,并在其末尾处添加.;%JA V A_HOME%\bin (3)配置CLASSPATH:在环境变量里新建一个变量名CLASSPATH并将变量写成.;%JA V A_HOME%\lib\dt.jar;%JA V A_HOME%\lib\tools.jar

图1-1 2. 安装并配置Tomcat相关参数; 将tomcat压缩文件apache-tomcat-6.0.35.zip中的内容解压缩到D:\apache-tomcat-6.0.35下,然后安装配置jdk环境变量的方法配增加系统变量。 变量名:TOMCAT_HOME;变量值:D:\apache-tomcat-6.0.35。然后修改系统变量CLASSPATH添加%TOMCAT_HOME%\common\lib\servlet-api.jar;同时修改系统变量Path,添加%TOMCAT_HOME%\bin 3. 安装MyEclipse,并在其中配置JDK和Tomcat相关参数; 4. 将axis2-eclipse-codegen-plugin-1.6.2和axis2-eclipse-service-plugin-1.6.2放至Myeclipse安装目录下的dropins子目录(D:\worksoft\myeclipse\dropins),启动MyEclipse,自动安装; 将axis2.war包拷贝到Tomcat安装目录下的webapps子目录; 启动Tomcat服务器,打开浏览器,输入并访问地址,成功得到Axis2部署成功的信息。如下图1-2所示。

航空订票系统代码

#include #include void FlightInsert(); //增加路线 void FlightDelete();//删除路线 void FlightLookup();//航班查询 void FlightRework();//航班路线修改 void FlightBuyticket();//买票 void FlightCancelticket();//取消订票 void Flightclean();//清空 void MainMenu();//主函数 void Display();//显示订票信息 typedef struct Customer //已定票乘客信息{ char Name[10]; // int Amount; //定票数 int Level; //舱位等级 int SeatNum; //座位号 char FlightNum[10]; //所定航班号 struct Customer *next; }Customer; typedef struct Replace //侯补乘客信息{ char Name[10]; //姓名e int Amount; //定票数 int Level; //舱位等级 char FlightNum[10]; //所定航班号 struct Replace *next; }Replace; typedef struct Flight //航班路线信息 { char From[10]; //起点站名 char Des[10]; //终点站名 char FlightNum[10]; //航班号 char PlaneNum[10]; //航班 char Week[20]; //飞机周日

机场订票系统

#include #include using namespace std; class Passenger { public: string name; string flight; Passenger *next; Passenger(const string name,string flight,Passenger* p=NULL) { this->name=name; this->flight=flight; this->next=p; } }; class Ticket { private: Passenger *head,*tail;// public: Ticket(); ~Ticket(); void reverseTicket();//订票 void cancelTicket();//退票 void checkTicket();//查询某人是否已定航班 void display();//显示乘客航班信息 }; Ticket::Ticket() { head=tail=NULL; } Ticket::~Ticket() { Passenger* p=head,*q=head; while(p!=NULL) { q=head->next; delete p; p=q; } }

void Ticket::reverseTicket() { string name,flight; cout<<"请输入您的姓名:"<>name; cout<<"请输入您要订的航班号:"<>flight; if(head==NULL) { head=tail=new Passenger(name,flight); cout<<"订票成功"<next) { if(namename) break; else p=p->next; } p->next=new Passenger(name,flight,p->next); cout<<"订票成功"<>name; cout<<"请输入您要退订的航班:"<>flight; Passenger *p=head,*q=head; if((p->name==name)&&(p->flight==flight)) { head=head->next; cout<<"退票成功!"<

航空售票管理系统

摘要 伴随着经济的不断发展,必然带动交通业和旅游业务的不断扩大, 特别是航空售票和订票的信息管理日异复杂, 传统的售票方式已经难以满足快节奏, 高效率的现代生活需求,这就要求航空公司要有一套好的售票数据库系统。 一个正常营运的航空公司需要管理所拥有的飞机、航线的设置、客户的信息等,但更重要的还要提供票务管理。面对各种不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。对数据的添加、修改、删除及查询等方面的操作应简单易行,并且能够具有较好的稳定性。航空售票管理系统主要采用Delphi 7.0做为开发工具,进行开发与设计的。本系统的使用界面具有十分人性化的特征,具有方便的查询功能,对售票、网上订票等方面的操作应简单易行,并且能够具有较好的稳定性。 关键词: 航空;售票;网上订票;管理系统;数据库;SQL语言。

目录 1.开发一个航空售票管理系统的背景和意义 (1) 1.1.传统售票方式的回顾和特点分析 (1) 1.2.航空售票管理系统的应用现状和前景展望 (1) 2.用计算机开发一个航空售票管理系统的可行性分析 (1) 2.1.技术可行性 (1) 2.2.经济可行性 (2) 2.3.法律可行性 (2) 3.开发环境的选择 (3) 3.1.Delphi 7.0简介 (3) 3.2.开发工具的选择 (3) 4.航空售票管理系统的需求分析 (3) 4.1.系统分析 (4) 4.2.系统功能模块设计 (4) 4.3.功能子模块分析 (5) 4.3.1.网上订票模块 (5) 4.3.2.用户查询模块 (5) 4.3.3.用户订票模 (5) 4.4.后台管理系统 (6) 4.4.1.后台管理系统子模块 (6) 4.5. 民航售票管理系统的顶级数据流程图 (8) 4.6. 民航售票管理系统一级数据流图 (9) 4.7. 数据字典定义 (10) 4.7.1.数据项定义 (10) 4.8.E/R模型 (13) 5.详细设计 (14) 5.1.系统的总体流程图 (14) 5.2.系统各模块的实现 (15) 5.2.1.系统登录窗口 (15) 5.2.2.主界面窗口 (16) 5.2.3.信息操作模块 (17) 5.2.4.送票员模块 (22) 5.2.5.员工管理模块 (23) 5.2.6.系统模块 (24) 5.2.7.售票员模块 (25) 5.2.8.前台订票模块 (26)

航空客运订票系统的设计与实现

课程设计说明书 课程名称 题目航空客运订票系统的设计与实现 院系_电子信息工程学院____ 班级__计算机科学与技术__ 学生______________ 指导教师_____________ 日期_ 2011.12.19-2011.12.30__ 数据结构课程设计任务书

指导教师:时间: 2011.12.8 航空客运订票系统的设计与实现一、简介

1.设计目的: 1.数据结构课程设计是综合运用数据结构课程中学到的几种典型数据结构,以及程序设计语言(C语言),自行实现一个较为完整的应用系统的设计与开发 2.通过课程设计,自己通过系统分析、系统设计、编程调试,写实验报告等环节,进一步掌握应用系统设计的方法和步骤,灵活运用并深刻理解典型数据结构在软件开发中的应用。 3.学会将知识应用于实际的方法,提高分析和解决问题的能力,增加综合能力。 航空空订票系统: (1)熟练掌握链表存储结构及其建立过程和常用操作; (2)熟练掌握队列的建立过程和常用操作; (3)学会自己调试程序的方法并掌握一定的技巧。 2.问题的描述: 航空客运订票的业务包括查询航线和客票预定的信、客票预定和办理退票等,设计一个程序以使上述任务借助计算机完成。 二、数据结构的设计: (1)航班信息:飞机抵达城市、航班号、飞机号、起降时间、航班票价、票价折扣、总位置和剩余位置、以訂票的客户。 (2)客户信息:客户、证件号、座位号。 三、功能(函数)设计: 1.每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行日(星期几)、载客量、余票量、票价格,折扣,已订票的客户(包括、订票量、舱位等级1,2或3)以及等候替补的客户(包括、所需票量); 2.全部数据可以只放在存中; 3.系统能实现的操作和功能如下: a) 查询航线: 根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额; b) 承办订票业务: 根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续, 输出座位号;若已满员或余票额少于定票额,则需重新询问客户要求。若需要,可登记排队候补; c) 退票业务: 根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其他排队候补的客户。

数据结构航空订票系统课程设计报告

摘要 飞机在现代的生活中扮演者非常重要的角色。它能够快速的把人们送到自己想要去的地方,既快速,又方便。所以现在坐飞机时很普遍的。但是都到机场去买票浪费时间,因此,航空订票系统应运而生。有了航空订票系统,用户可以在该系统进行飞机票的查询,订票,退票等操作。方便了大家 关键词航空订票系统、查询、订票、退票

目录 摘要........................................................................................................ I 1 需求分析 (2) 1.1 需求概述 (2) 1.2 需求环境 (2) 1.3 功能描述 (2) 2 概要设计 (3) 2.1 程序功能模块 (3) 2.2 程序流程图 (3) 2.3 课程设计的思想 (3) 3 详细设计 (4) 3.1 程序初始化 (4) 3.1.1代码功能 (4) 3.1.2 功能实现代码 (4) 3.2 查询航班信息 (6) 3.2.1代码功能 (6) 3.2.3 功能实现代码 (7) 3.3 订票模块 (8) 3.3.1 代码功能 (8) 3.3.2 功能实现代码 (8)

4 测试与运行 (14) 5结束语..................................................................................................................... ..16 6 参考文献 (17) 7附录..................................................................................................................... .. (18) 1 需求分析 1.1 需求概述 航线管理。每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日

民航订票管理系统

实验十三数据库管理系统综合应用 -------民航订票管理系统 一、实验目的: 通过完成从用户需求分析、数据库设计到上机编程、调试和应用等全过程,进一步了解和掌握所讲解的内容。 二、实验简述: 民航订票系统主要分为机场、航空公司和客户三方的服务。航空公司提供航线和飞机的资料,机场则对本机场起飞和降落的航班和机票进行管理,而客户能得到的服务应该有航班线路和剩余票数的查询,以及网上订票等功能。客户又可以分为两类,一类是普通客户,对于普通客户只有普通的查询功能和订票功能,没有相应的机票优惠,另一种是经常旅客,需要办理注册手续,但增加了里程积分功能和积分优惠政策。机场还要紧急应对措施,在航班出现延误时,要发送相应的信息。 三、实验要求: 完成该系统的数据库设计; 用SQL实现数据库的设计,并在SQL Server上调试通过。 四、参考答案: 1、需求分析 (1)航空公司 航空公司的操作流程如图C.1所示。 图C.1 航空公司操作分类表 (2)客户 客户的操作流程如图C.2所示。

图C.2 客户操作分类表 (3)机场 机场的任务是根据航空公司提供的航线和飞机,安排航班,以及航班的机票。如果出现晚点等情况,要记录并发送信息,对特殊客户记录其消费信息,并相应提供优惠。 (4)客户订票 客户订票涉及到多个因素:由客户提出订票申请;由机场管理航班机票;对于特殊客户,除给予票价优惠以外,还要累计里程;订票后需判断是否超员。这些因素涉及到客户资料、航班资料以及由航空公司提供的航线(里程)和飞机(座位数)资料中所提供的相关数据。 客户订票的操作流程如图C.3所示。 2、概念模型设计 数据库需要表述的信息有以下几种: (1)航空公司信息 (2)客户信息 (3)飞机信息 (4)航线信息 (5)航班信息 (6)订票信息 (7)特殊客户积分

UML建模设计航空订票系统

UML 建模设计 航 空 订 票 系 统 姓名:卫飞 班级:1528 学号:2

一、背景 1.1背景概述 随着知识经济的到来,人类已经逐步进入信息化社会,信息增长的速度越来越快,人们希望利用先进的管理理论方法手段来得到并处理越来越多的信息,以提高工作效率和管理水平。由于信息资源对人们生活的重要性,不断提高信息的收集,传输,加以利用等活动,日益成为人们社会生活的重要组成部分。网上机票预订管理系统的产生和发展正好满足人们的这种需求 1.2 主要组成及功能 1、新用户注册,新用户可以注册,注册时输入用户名可以查询用户可不可用,可用就可以注册,注册时可以判断用户输入的密码和验证密码是否相同,相同才给以注册,如果满意可以点注册,注册成功后用户可以选择不用在回到登陆界面,可以直接陆到用户主界面,以后就可以用这个用户登录了,如果不满意,点取消,所有信息清空,重新输入。 2、验证登陆名密码,正确进入主菜单,根据登录时所选的登录方式(客户、管理员)的不同分别对用户设定不同的访问权限(如果是输入的客户用户名和密码正确,选择以客户方式登陆则主界面里面的管理员界面不能用,如果输入的是管理员的相应用户密码正确,以管理员的方式登陆则管理员界面可用)不正确则清空登录框,最多可以输入三次,三次不正确系统会自动

关闭 3.我的航班界面。你可以点击你想查询的有关机票的信息的按钮(舱位信息查询,客机信息查询,航线查询,客户类型信息查询)获得相关信息的表,根据表的内容,你可以在下面的下拉框中选择你要定的票信息,点确定后在下面会显示你的机票的相关内容,如果满意可以点击订票,把相关信息添加到机票数据库表中,如果不满意,可以点重置,所有信息清空,再重新选择。 4.退票功能。用户可以根据用户信息表中的我的机票信息查询,找出机票号,在输入到机票号查询里,点击查询获得你的机票信息以及价格显示,点击退票则在数据库机票信息表中删除本条信息 二、使用Rose绘制图 分别有:用例图、类图、包图、顺序图、协作图、状态图、活动图、组件图、部署图 情景:机票预订系统是某航空公司推出的一款网上选票系统。其中,未登陆用户只能查询航班信息;以登陆的用户还可以网上购买机票,查看已购买机票,也可以退定机票;系统管理员可以安排系统中的航班信息。此外,该购票系统还可以与外部的一个信用评价系统有交互。当某用户一个月之内退订两次及以上的机票时,需要降低该用户在信用评价系统中的等级。当信用等级过低时,则不允许用户再次购买机票。

C++课程设计—航空售票管理系统

C++课程设计—航空售票管理系统

————————————————————————————————作者:————————————————————————————————日期:

内蒙古科技大学 本科生《C++程序设计》课程设计说明书 题目:航空售票管 理系统 学生姓名:完美主义 学号:XXXXXXXX 专业:计算科学与技术 班级:计2010-1班 指导教师:XXX

【摘要】 随着科技的发展和人们生活水平的日益提高,人们在不断追求更加快捷的交通方式以满足人们快节奏的生活方式,航空系统在交通系统中已扮演着一个越来越重要的角色。然而,交通的快捷离不开信息的快捷。 随着随着计算机的发展和普及,人们的生活方式发生了巨大的改变,计算机在代替和延伸脑力劳动方面发挥着越来越重要的作用。在交通系统中,有大量的数据需要被处理,而这些工作有人来完成几乎是不可能的,而交给计算机处理,就可以很好地满足我们的需求。 航空售票管理系统可以根据乘客和管理人员的要求,进行方便快速的查询、购票、退票和管理等工作。本文介绍了简易航空售票管理系统的实现过程。 【关键词】 航空售票管理系统动态数组类和对象文件操作运算符重载多文件结构

成绩评定标准 课程设计的验收答辩采取“讲解程序+提问+即时编程”的方式。 考核项目评价质量成绩 程序功能完全实现,并能通过答辩。(60%)A能完全正确回答提问; B问题回答的基本意思正确; C不能回答或回答错误,抽取程序小的功能即时编程,能完成; D不能回答或回答错误,即时编程无法完成; 程序设计符合面向对象的思想和原则,结构合理(15)A程序结构层次分明,提取出各个实体类,类的设计合理;B程序结构层次分明,具有客户类和服务类; C类的设计基本正确; D几乎在一个类或者方法中实现了大部分的逻辑,结构不够清晰; 程序的风格(10%)A遵守编码规范,有良好的风格; 以下问题每出现一项成绩降一个等级:1.类、方法和变量命名不符合规范;2.方法和属性前缺少注释; 3.程序没有适当缩进; 设计说明书(15%)从以下几方面考核:1.结构完整2.图表正确3.文字通顺4.版面工整

航空订票管理系统-软件项目管理课程设计报告

软件项目管理 课程设计报告 专业:软件工程 年级: 学号: 学生姓名: 题目名称:航空订票管理系统 指导老师: 完成时间: 1、项目概述 目前,国内航空公司的数量和规模都在扩大,国外航空公司也纷纷着陆中国,这些航空公司之间的竞争可谓日益激烈。配备一个安全、高效、灵活、可靠的客户服务中心系统对于航空公司加强客户服务质量,提高客户服务水平,扩展业务途径,维护公众形象,提高工作效率必将发挥重要作用。 对航空公司来说,航空订票管理系统既能扩大服务范围,扩大公司影响,减少营业费用,又对稳固航空公司的客源有着重要的辅助作用;站在旅客的角度,航空公司提供的这种服务提供了更多的方便,节省了很多时间。建设航空订票管理系统是体现和提高航空公司领导业绩的一条捷径,此外还具有重要意义: 1、改善航空公司服务质量; 2、创造和提升航空公司的品牌优势; 3、优化航空公司的服务流程; 4、提升信息化的水平; 2、工作任务(Statement Of Work,SOW)书 进入信息时代后,人们对航空订票的运作实现信息化管理的要求越来越高,随着社会的生活节奏化,为了方便大众,提高工作效率,该系统的建设实现对航空订票的高效率信息化管理。该系统一方面实现对大众的自助服务功能;如:网上订票、退票、查询等功能。另外还要实现系统管理员对整个系统资源的信息化管理,如:用户管理。

一、整体要求 1.系统用例图 2.用例描述 (1)航班查询 查看航班信息基本查询,从下拉列表中选择航班或起点或终点信息 综合查询,手动输入航班的基本信息 (2)订票 输入航班信息显示航班信息,以及打折后的票价信息,询问信息是否正确正确输入个人信息完成订票 不正确返回订票初始界面 (3)退票 输入将退票的序号显示票的具体信息,并询问是否退票退票成功,更新顾客数据库 (4)管理

毕业论文-航空售票系统设计与实现

摘要 航空售票/订票是航空业务中的一个最基本的业务,从表面上来看,它只是航空业务的一个简单的部分,但是它涉及到资金管理与客户服务等多方面,因此,过去传统的售票已经不能满足现代航空业务流量剧增的客观要求。 本系统——航空售票系统,采用https://www.sodocs.net/doc/0217791098.html, 技术作为创建应用程序的方式,以C#作为编程语言,采用SQL Server 数据库作为后台数据库。它是基于Browser/Server结构下形成的数据驱动的Web应用程序。不仅能方便旅客,还能节省航空公司的代理费用,加速资金周转。实现了后台管理员对航空公司、航班和订票信息的维护;前台客户通过注册登陆可以查询航班信息,进行订票和查看自己的购票信息并可以删除管理员未确认的订票信息。同时可以进行购票错误以后的退票信息等功能。 本论文主要涉及软件,数据库与网络技术等。涵盖知识面广,可有效地提高消费者综合运用所学知识分析解决问题的能力,增强消费者对事物的理解与掌握能力,培养消费者掌握科学的研究方法,正确的设计思想,独立思考,勇于进取,探索创新,为今后进一步学习与工作奠定了良好的基础。 关键词航空售票;https://www.sodocs.net/doc/0217791098.html,;C#;SQL Server数据库; word版本.

Abstract Ticket / booking is the aviation business in the most basic of business, from the face of it, it's just a simple air part of the business, but it relates to financial management and customer service and other aspects, therefore, has been the traditional ticket Modern air traffic flow can not meet the objective requirements of surge. The system - Air ticketing system, using https://www.sodocs.net/doc/0217791098.html, technology as a way to create applications to C # as the programming language, using SQL Server database as the backend database. It is based on Browser / Server structure, formed under the data-driven Web applications. Not only convenient for tourists, but also save the airline agent costs and accelerate cash flow. Administrators realized back airlines, flights and booking information maintenance; receptionists can search for flights by up login information, make reservations and view their own information and tickets can delete the administrator has not confirmed the booking information. Tickets can also refund after wrong information and so on. This paper mainly involves software, database and network technology. Cover the wide range of knowledge, can effectively improve the knowledge of consumers of the integrated use of problem-solving skills, and enhance consumer understanding and grasp of things, cultivating consumer knowledge of scientific research methods, the correct design ideas, independent thinking, courage to forge ahead, exploration and innovation, for further study and work laid a good foundation. Keywords:https://www.sodocs.net/doc/0217791098.html, C# SQL Server database air ticket word版本.

民航订票系统

1 绪论 1.1 系统设计的目的 为了方便机场工作人员对机票的管理,提高飞机票的管理效率,降低飞机票管理中的出错率,减少信息交流及其带来不必要的开销。需要设计一个民航订票系统,该系统能及时反映航班及机票的剩余数量等信息,可快速的帮乘客订到想要的机票,而乘客也可以通过该系统实现自助退票的功能。 1.2 实现的目标 该系统是由两个人共同设计实现功能,由于一个人的能力有限,该系统仅能实现录入航班信息、查询航班信息、订购飞机票、退订飞机票等一部分功能(航班的信息存储在文件夹中)。 1.3 课题的研究方法 机票管理系统是实现机场机票的预定、统计和分析,提高机票运用的科学管理水平,充分发挥机票利用率,节省订退票时间。系统的主要设计思想是实现对机票的查询、退订等功能。航班的信息以文件的形式存储,用头文件包含、全局变量定义和结构体定义源代码,用结构体数组来存放顾客名、航班号、座位号等信息,用链式结构存储信息。系统的人机接口采用简单的字符界面进行交互。系统的设计方法是结构化设计方法,采用C语言进行开发。软件开发平台采用Visual C++6.0[1]。

2 软件模块结构图 民航订票系统可以分为四个部分,订票、退票、查询信息、信息载入。 图2.1 民航订票系统模块结构图

3 详细设计 3.1 数据结构设计 用printf()函数输出界面,typedef struct airline{}定义航班的信息,如航班号、飞机号、目的地、座位总数和剩余座位数等。typedef struct customer{}定义顾客信息,如顾客名、所订航班号和座位号等。初始化链表,并在airline、customer 链表中操作,实现系统的功能[1]。 3.2 模块设计 3.2.1 界面设计 用printf()函数输出界面,提示用户选择需要的功能,用条件语句捕捉用户输入的选项,并执行代码,进入用户所选的操作界面。若用户输入非选项的字符,则提示输入错误,提醒用户重新选择。 3.2.2 订票模块设计 进入订票模块后,进行订票。若票已经售完,提示用户不能预订该航班的机票。若还有余票,则提示用户输入个人信息订票。订票成功后,系统中该航班的余票减少相应的数量,并将顾客信息存入文件[2]。代码实现: status book(airline *l,char *flight_num,customer *c,char *name) { airline *p=l; customer *q=c->next ; p=l->next ; for(;q->next !=NULL;q=q->next){} for(;p!=NULL;p=p->next ) { if(strcmp(flight_num,p->flight_num )==0) { if(p->left >0)

《管理信息系统》课程设计报告--航班售票管理系统设计报告

航班售票管理系统设计报告 一、系统分析 (一)可行性分析 国际民航业的激烈竞争又迫使担负国际航线运输任务的航空公司必须尽快推出自己的因特网售票系统,而这些又必须由一个安全的网上订票与支付系统作支持。更重要的还要提供票务管理。面对不同种类的信息,需要合理的数据库结构来保存数据信息以及有效的程序结构支持各种数据操作的执行。航空业身处信息时代的电子商务大潮中,加之传统的售票方式已经不能满足现今航空业的发展,于是航空售票管理系统就自然而然被应用。 由于本系统管理主要是对机票的管理,且每个数据内容具有较强的关联性,涉及的计算过程不是很复杂。因此,比较适合于采用数据库管理。且航空公司用于机票管理的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技术难度方面,由于有相关参考文献,还有就是网上资料,特别是参考其它程序的功能,因此完全可以实现系统的投资约50万元,待5年后更新,年使用费约10万元,在经济上是可行的。 (二)需求分析 1、航班售票管理系统开发目标 售票/订票是民航业务中的一个最基本的业务,表面上看,它只是民航业务的一个简单的部分,但是它涉及到资金管理与客户服务等多主面,因此,过去传统的售票方式已经不能满足现代航空业务流量剧增的客观要求,本课程设计便是利用开发工具VF6.0开发一个民航售票管理系统,它能方便快捷地运用在民航业务的营运之中。 2、航班售票管理系统的主要功能 本系统设计主要是根据售票业务的基本流程进行的,系统功能十分强大,包括如下几个方面:订票管理、乘客查询与退票管理、查询飞行时刻窗口和系统维护四方面内容。其中,订票系统至少要满足: (1)每一航班的乘客乘坐飞机的起点、终点、日期和可以使用(预订)的座位等基本信息。 (2)自动显示符合乘客要求的航班及座位是否存在(是否还有空位) (3)查询每一航班的售票订票情况、乘客信息及售票收入金额。 (4)可以按五种方式查询航空公司的航班时刻表信息。 3、航班售票管理系统业务流程分析

航空客运订票系统

题目5 航空客运订票系统(难度系数:1.2) [问题描述] 航空客运订票的业务活动包括:查询航线、客票预订和办理退票等。试设计一个航空客运订票系统,以使上述业务可以借助计算机来完成。 [基本要求] (1)每条航线所涉及的信息有:终点站名、航班号、飞机号、飞行周日(星期几)、乘员 定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2或3)以及等候替补的客户名单(包括姓名、所需票量); (2)作为示意系统,全部数据可以只放在内存中; (3)系统能实现的操作和功能如下: ①查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额; ②承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则需重新询问客户要求。若需要,可登记排队候补; ③承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足他的要求,则为他办理订票手续,否则依次询问其它排队候补的客户。 [测试数据] 由读者指定。 [实现提示] 两个客户名单可分别由线性表和队列实现。为查找方便,已订票客户的线性表应按客户姓名有序,并且,为插入和删除方便,应以链表作存储结构。由于预约人数无法预计,队列也应以链表作存储结构。整个系统需汇总各条航线的情况登录在一张线性表上,由于航线基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。每条航线是这张表上的一个记录,包含上述八个域、其中乘员名单域为指向乘员名单链表的头指针,等候替补的客户名单域为分别指向队头和队尾的指针。 [选做内容] 当客户订票要求不能满足时,系统可向客户提供到达同一目的地的其它航线情况。 读者还可充分发挥自己的想象力,增加你的系统的功能和其它服务项目。

专业课程设计I分析方案_民航票务管理与售票系统

专业课程设计I报告( 2011 / 2012 学年第二学期) 题目:民航票务管理与售票系统 专业软件工程 学生姓名仓业亮 班级学号 B09040811 指导教师李玲娟 指导单位计算机学院软件工程系 日期 2012年4月26日

指导教师成绩评定表

民航票务管理与售票系统 一、课题内容和要求 1.1课程简介: 本次课程设计的基本要求主要是按照软件工程思想,以SQL Server 2000为后台数据库,以Delphi为前端开发工具,设计并实现一个民航票务管理与售票系统。其中,系统实现的功能主要有 (1)可以进行航班信息、票务信息的添加、修改和删除。 (2)允许普通用户和各类人员查询有关民航航班的时刻表,包括航班号、起点、终点、日期、起飞时刻、到达时刻、剩余座位数、票价、航班所属航空公司等方面的准确信息。也可以按照终点和日期进行查询。 1.2. 需求描述 1.2.1 我把本系统的用户统一分为普通用户和具有信息管理职责的管理员特殊用户,其中,管理员是系统指定的用户,不用注册,且本身也不必具备修改用户信息的功能。而普通用户初次登陆时是需要注册的,注册完了之后,如果数据成功添加在了数据库的passenger表中,则显示成功注册,然后重新登陆。 1.2.2可以进行航班信息、票务信息的添加、修改和删除。 该功能只能有管理员实现,其中票务信息我是不允许修改的,只有删除的选项,之所以这么做,第一是票务信息(p_ticket)关联的关联的两张表passenger乘客信息表和flight航班信息表都是可以修改的,所以票务信息的修改本质上意义不大;第二就是我的三张表都是有外键约束的,所以当票务信息被修改的时候,必然影响到其他主键表,所以技术上也添了麻烦。 1.2.3用户可以对航班信息表进行一定限度的查询,包括按航班号查询,按起点和终点查询和按日期查询。三种条件选一种 1.2.4 售票信息实时更新: 具体要做到的是当某个航班被售票的时候,其剩余座位数也要跟着减少一个,相应的退票的时候,座位数也要跟着加一。需要注意的是用户不具有退票的功能,必须由管理员操作。 1.2.5非功能需求 (1)可读性:程序的源代码要书写规整,要求容易理解,以便于日后程序

航空订票系统详细设计

详细设计报告 一、引言 1.1 编写目的: 本阶段在系统的需求分析的基础上,对航空订票系统做详细设计。主要解决了实现该系统程序模块具体设计问题。包括确定算法,数据结构,模块接口的使用,数据库的动态操作以及界面设计等。在以下的概要设计报告中将对在本阶段中对系统所做的所有详细设计进行详细的说明。 在下一阶段的编码过程中,程序设计员可参考此详细设计报告,在详细设计对机票预定系统所做的算法设计,数据结构以及数据库动态操作的基础上,对系统进行编码。 1.2 项目背景: 开发软件名称:航空订票系统。 用户:航空公司 运行环境:宿舍电脑。 开发平台:MyEclipse 7.0 PostgreSql数据库。 系统架构:该系统采用java+jsp框架 1.3 定义: 查询:对数据库的操作的一种,用于搜索数据信息。 插入:对数据库的操作的一种,用于将数据存入数据库中。 更新:对数据库的操作的一种,用于更改数据库中的数据信息。 PostgreSql: 系统服务器所使用的数据库管理系统(DBMS)。 SQL: 一种用于访问查询数据库的语言 事务流:数据进入模块后可能有多种路径进行处理。 主键:数据库表中的关键域。值互不相同。 外部主键:数据库表中与其他表主键关联的域。 1.4 参考资料: 需求分析说明书软件开发小组 软件工程齐治昌谭庆平宁洪等高等教育出版社 实用软件工程郑人杰等,清华大学出版社。 二、总体设计 2.1 需求概述 航空订票系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的机票预定系统,实现航空公司的机票销售的自动化的计算机系统,为企业的决策层提供准确、精细、迅速的机票销售信息。具体功能为用户把预定机票的旅客信息(姓名、性别、身份证号码(护照号码)、乘坐时间、出行始发地和目的地等)输入到系统中,系统为旅客安排航班。当旅客交付了预订金后,系统打印出取票通知和帐单给旅客,旅客在飞机起飞前一天凭取票通知和帐单交款取票,系统核对无误即打印出机票给旅客。此外航空公司为随时掌握各个航班飞机的乘载情况,需要定期进行查询统计,以便适当调整。同时还需完成旅客延误了取票时间的处理,航班取消后的处理,旅客临时更改航班的处理等。 根据可行性研究的结果和客户的要求,分析现有情况及问题,采用B/S结构,将机票预定系统划主要就是服务器端子系统。

数据库课程设计民航售票系统

计算机与信息学院 数据库课程设计报告 专业班级信息安全11-1班学生姓名及学号周伟康 课程教学班号 任课教师沈明玉 实验指导教师郑淑丽 实验地点第三机房 2012 ~ 2013 学年第三学期

民航机票销售系统设计 目录 1.课程设计目的 (1) 2.课程设计描述 (2) 3.需求分析 (3) 4. 用例测试 (4) 5.程序结构 (5) 6.部分源码 (6) 7.总结 (7)

1.课程设计目的 模拟实现一个现实生活所需的数据库系统,结合多门相关课程内容,把理论运用到实践中去,提高知识的理解深度,技能的熟练程度。为将来向社会贡献有用的产品打下基础。 2.课程设计描述 本次课程设计的课题是设计一个民航机票销售数据库系统,来模拟民航机票预订和销售系统。本人在小组中负责所有应用程序设计部分并参与数据库建设的讨论,适当提出建议。 初步考虑,针对现实用户的不同角色需求,计划开发3种客户端。 1、普通用户个人使用的订票客户端 2、民航系统员工使用的销售客户端 3、航空公司内部使用的航班信息提供客户端 三种客户端通过服务器间接访问数据库,故还需编写服务器。 初步实践后,鉴于以下原因,本次课程设计仅实现个人订票的基本应用。 1、本人能力有限。对后两者业务经验极度缺乏,需求模糊。 2、在对三种客户端业务扩充时发现,整个应用层应是基于多个数据库的 整体,民航机票销售只是其中业务逻辑的一部分,后两者客户端有其 独立的数据库。对机票销售这一主体功能来说,只用到后两库中部分 共享数据,故对整个系统降级处理,只保证实现机票销售。故把数据 合并在一个数据库中,航班、员工等信息假设以预存库中,则后两客 户端可推迟实现。 本次设计程序用Java+Oracle实现, 3.需求分析 基本目标:实现用户使用网上订票系统进行查票,登陆,订票,改签,退票等基本功能。 概念设计图: 用户客户端功能概述: 1. 注册及登录

飞机售票管理系统

飞机售票管理系统内部编号:(YUUT-TBBY-MMUT-URRUY-UOOY-DBUYI-0128)

小组成员 陈 雷

目录

一、飞机售票管理系统的开发背景 航空客运业务诞生已有近一个世纪了,作为现有交通工具中最方便快捷的一种,它确确实实地给民众的生活、出行带来了极大的方便。互联网、邮寄机票以及电子机票技术的发展正在改变航空公司的销售业务,使全世界的消费者不出户就可以买到机票。自九十年代以来,因特网技术的飞速发展正在迅速地改变着人们的生活方式,因特网正在由科学工作者的工具变为普通百姓获取信息、进行交流的场所,而因特网的商业应用则尤为引人注目。航空公司在因特网上建立网上售票系统不仅方便了旅客,还节省了航空公司的代理费用,加速了资金周转,这为售票成本居高不下的航空公司带来了无限生机。 随着信息技术在管理上越来越深入而广泛的应用,管理信息系统的实施在技术上已逐步成熟。管理信息系统是一个不断发展的新型科学,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立起和自身特点相适应的管理信息管理系统。 航空售票系统将提供机票的舱位实时查询、机票预定等功能,是拓展机票业务的最佳手段,能提高公司的工作效率、运作成本。因而航空售票系统的开发应用是势在必行的了。计算机技术以突飞猛进的速度渗透到各个领域,成为人们生活中不可缺少的一部分。迄今,我国的信息化建设已取得很大进步,在这样的环境下,航空信息化建设也向着严密、科学、完善的管理体系发展。 机票预订系统是一个很好的项目,不仅方便旅客,而且可以减轻工作人员的劳动强度,提高工作效率和企业的知名度,提升企业的整体水平,增强企业核心竞争力。随着网络的进一步应用,增加Internet订票和人性化的服务,为企业的决策提供强有的支持,让旅客满意,必将为社会的科技进步带来更大的社会性效

相关主题