航班订票系统Word文件下载.docx

上传人:b****8 文档编号:22755900 上传时间:2023-02-05 格式:DOCX 页数:30 大小:68.51KB
下载 相关 举报
航班订票系统Word文件下载.docx_第1页
第1页 / 共30页
航班订票系统Word文件下载.docx_第2页
第2页 / 共30页
航班订票系统Word文件下载.docx_第3页
第3页 / 共30页
航班订票系统Word文件下载.docx_第4页
第4页 / 共30页
航班订票系统Word文件下载.docx_第5页
第5页 / 共30页
点击查看更多>>
下载资源
资源描述

航班订票系统Word文件下载.docx

《航班订票系统Word文件下载.docx》由会员分享,可在线阅读,更多相关《航班订票系统Word文件下载.docx(30页珍藏版)》请在冰豆网上搜索。

航班订票系统Word文件下载.docx

【1】支持航空管理公司更加便捷的管理

【2】支持航空公司高效率的满足人们空行需求,包括与班机有关的订票,退票,查询等功能。

【3】支持航空公司随时增加或者是删除航班信息

开发设计思想

基于以上系统设计目标,本文在开发人事管理信息系统时遵循了以下开发设计思想:

●采用现有的软硬件环境及先进的管理系统开发方案,从而达到充分利用现有资源,提高系统开发水平和应用效果的目的。

●尽量达到操作过程中的直观、方便、实用、安全等要求。

●系统采用模块化程序设计方法,既便于系统功能的各种组合和修改,又便于未参与开发的技术维护人员补充、维护。

●系统应具备数据库维护功能,及时根据用户需求进行数据的添加、删除、修改、等操作。

系统功能模块设计

本系统分为六个模块:

增加航班模块、浏览航班模块、查找航班模块、航班排序模块、订票模块、退票模块。

得到如图所示系统功能模块图。

系统功能模块图

算法思想描述

主界面程序图

系统录入程序图:

查询系统程序图:

订票系统程序图:

退票系统程序图:

程序源代码

#include<

iostream.h>

string.h>

fstream.h>

#include<

iomanip.h>

classFlight//航班类

{

charnum[20];

//航班号

chars[20];

//出发站

chare[20];

//到达站

chart[20];

//起飞时间

intfee;

//票价

intsum;

//总票数

intn;

//剩余票数

Flight*next;

//下个航班

public:

Flight(){}

~Flight(){}

char*getnu(){returnnum;

}

voidsetnu(char*n){strcpy(num,n);

char*gets(){returns;

voidsets(char*s){strcpy(this->

s,s);

char*gete(){returne;

voidsete(char*e){strcpy(this->

e,e);

char*gett(){returnt;

voidsett(char*t){strcpy(this->

t,t);

intgetf(){returnfee;

voidsetf(intf){fee=f;

intgetsu(){returnsum;

voidsetsu(ints){sum=s;

intgetn(){returnn;

voidsetn(intn){this->

n=n;

Flight*getnext(){returnnext;

voidsetnext(Flight*n){next=n;

};

classClient//乘客类

charname[20];

//乘客姓名

//所购票数

Client*next;

Client(){}

~Client(){}

char*getna(){returnname;

voidsetna(char*n){strcpy(name,n);

Client*getnext(){returnnext;

voidsetnext(Client*n){next=n;

classmanage//管理类

{

private:

Flight*head1;

//航班头指针

Flight*last1;

Client*head2;

//乘客头指针

Client*last2;

manage(){}

~manage(){}

voidini();

voidnewf();

voidbuy();

voidshow1();

voidshow2();

voidmodify();

voiddel();

voiddelall();

voidbaClient();

voidquery1();

voidquery2();

voidsave();

voidrun();

voidmanage:

:

ini()

head1=last1=NULL;

head2=last2=NULL;

ifstreamrf("

Flighte.txt"

ios:

out|ios:

nocreate,filebuf:

openprot);

if(rf.fail())cout<

<

"

\n\n提示,文件读取失败!

;

else

{

intn=0;

//得到个数

rf.read((char*)&

n,sizeof(n));

//得到航班个数

for(inti=0;

i<

n;

i++)

Flight*p1=newFlight;

rf.read((char*)p1,sizeof(Flight));

p1->

setnext(NULL);

if(head1==NULL)head1=last1=p1;

else{last1->

setnext(p1);

last1=p1;

}

cout<

\n初始化"

条航班信息成功!

//得到乘客个数

for(i=0;

Client*p2=newClient;

rf.read((char*)p2,sizeof(Client));

p2->

if(head2==NULL)head2=last2=p2;

else{last2->

setnext(p2);

last2=p2;

条乘客信息成功!

rf.close();

newf()

Flight*p;

p=newFlight;

\n录入航班信息\n"

charc[50];

请输入航班号\n"

cin>

>

c;

p->

setnu(c);

请输入起始地\n"

sets(c);

请输入目的地\n"

sete(c);

请输入起飞日期(年/月/日/时:

分)\n"

sett(c);

\n请输入机票金额\n\n"

p->

setf(n);

\n请输入机票总数\n\n"

setsu(n);

setn(n);

if(head1){last1->

setnext(p);

last1=p;

elsehead1=last1=p;

\n新航班创建成功\n\n"

buy()

if(head1==NULL){cout<

提示:

无航班信息!

\n"

return;

\n\n\n\n购买机票\n"

\n请输入航班号\n"

inty=1;

Flight*p=head1;

while(p)

if(strcmp(p->

getnu(),c)==0){y=0;

break;

p=p->

getnext();

if(y){cout<

\n错误,无此航班号!

return;

if(p->

getn()<

=0){cout<

\n提示,此航班票已经售完!

\n|---------------------------------------------------------------------------|"

\n航次:

"

getnu()<

起飞时间:

gett()<

总票数:

getsu();

\n航线:

gets()<

--->

gete()<

票价:

getf()<

剩余票数:

getn();

\n|---------------------------------------------------------------------------|\n"

Client*p1;

p1=newClient;

\n-------------------------请进行购票登记---------------------------"

\n请输入姓名:

setna(c);

loop:

\n请输入购买票数:

if(n>

getn())

\n提示,您最多只能购买"

张票!

gotoloop;

setn(p->

getn()-n);

if(head2==NULL)head2=last2=p1;

last2=p1;

\n------------买票成功,您需要付款:

getf()*p1->

元-----------------"

show1()

航班信息为空!

\n\n"

setw(50)<

航班信息"

show2()

if(head2==NULL){cout<

乘客信息为空!

Client*p=head2;

乘客信息"

\n姓名:

getna()<

航班号:

所购票数:

modify()

修改航班"

charm[20];

\n\n请输入要修改的航班\n\n"

m;

getnu(),m)==0)

y=0;

\n请修改起始地\n\n"

sets(m);

\n请修改目的地\n\n"

sete(m);

\n请修改登机时间(年/月/日/时:

分)\n\n"

sett(m);

\n请修改机票价格\n\n"

\n请修改机票总数\n"

if(n<

getsu()-p->

getn()){cout<

\n错误,机票总数必须>

=已售机票数!

gotoloop;

setn(n-(p->

getn()));

if(y)

\n航班修改成功!

del()

\n\n提示:

删除航班"

Flight*temp,*p=head1;

\n\n请输入要删除的航班\n\n"

if(strcmp(head1->

getnu(),m)==0){

if(head1->

getsu()!

=head1->

getn()){cout<

\n该航班已经开始售票,不能取消!

temp=head1;

head1=head1->

while(p->

getnext())

{

getnext()->

=p->

temp=p->

setnext(temp->

getnext());

break;

{deletetemp;

\n\n操作成功!

delall()

清空信息"

Flight*p1=head1;

while(p1)

Flight*temp1=p1->

deletep1;

p1=temp1;

Client*p2=head2;

while(p2)

Client*temp2=p2->

deletep2;

p2=temp2;

\n\n信息清空成功!

query1()

charc;

charm[30];

do

│[航班查询菜单]│\n"

│1,按起始地查询│\n"

│2,按目的地查询│\n"

│3,返回│\n"

switch(c)

case'

1'

\n\n请输入要查找的起始地\n\n"

gets(),m)==0)

cout<

\n|-----------------------------------------------------------------------------|"

if(y)cout<

失败,您查询的航班不存在!

case'

2'

\n\n请输入要查找的目的地\n\n"

gete(),m)==0)

y=0;

3'

while(c!

='

c'

&

c!

C'

);

query2()

charc,m[20];

│[乘客查询菜单]│\n"

│1,乘客查询菜单│\n"

│2,乘客查询菜单│\n"

inty1=1,y2=1;

\n\n请输入要查找的航班号\n\n"

if(strcmp(p1->

y1=0;

p1->

p1=p1->

if(y1)cout<

\n失败,您查询的航班不存在!

else{

if

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

当前位置:首页 > 工程科技 > 交通运输

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

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