航空订票系统说明书Word文档格式.docx
- 文档编号:20218925
- 上传时间:2023-01-20
- 格式:DOCX
- 页数:13
- 大小:151.38KB
航空订票系统说明书Word文档格式.docx
《航空订票系统说明书Word文档格式.docx》由会员分享,可在线阅读,更多相关《航空订票系统说明书Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
该系统实现了航班管理、订票管理、退票管理和查询航线航班等功能。
在航班管理中航空公司内部管理员能在系统中完成添加客户或删除客户信息、查看数据库等功能。
乘客能够在系统中完成查询航班、订票办理和退票办理等功能。
乘客能够用多种方式来查询航班信息,系统还能将这些信息保留在数据库中,并供航空公司内部管理员随时查询。
关键词:
航空定票系统;
结构体;
文件;
指针;
定票;
退票;
查询。
2前言
通过该题目的设计进程,能够培育学生结构化程序设计的思想,加深对高级语言大体语言要素和控制结构的理解,针对c语言中的重点和难点内容进行训练,独立完成有必然工作量的程序设计任务,同时强调好的程序设计风格。
取得软件工程的综合训练,提高解决实际问题的能力。
3正文
系统分析
设计一个实用的航空订票系统,能以简便高效的方式对航线及客户信息、订票、退票等的录入和查询,具体功能如下:
1、系统以菜单方式工作,要求界面友好,易于操作;
2、订票系统信息录入功能(订票信息以文件保留);
3、订票成功,存储客户信息功能;
4、退票成功,查询客户信息功能;
5、订票信息查询功能。
3.2整体设计
为实现系统功能,本程序主要分为五个模块。
它们别离为:
存储航线信息、存储客户信息、退票删除客户信息、订票存储客户信息、查询客户信息,保留而且退出该程序。
这五个函数再通过主函数挪用别离得以实现。
主函数,第一提供了程序运行时的友好界面,列出了清单,提供用户做出选择,以便决定利用订票系统的哪一种功能。
然后,通过执行多分支选择语句——switch语句,别离现其它各个函数的挪用功能。
其它各个函数的功能别离如下:
airline函数用于对航线及客户中的数据以文件的方式进行读入和添加;
book函数用于订票时对客户信息的存储;
cancel函数用于退票时对客户信息的删除;
information函数用于对文件中客户信息的查询。
(选择5时退出订票系统)
详细设计
(1)数据结构设计
本程序中,对于航线及客户各项详细信息的记录用了结构数组的形式,对于主要数据结构的应用如下:
结构数组:
structairlineInformation/*存储航线信息*/
{
charflightNum[20];
/*航班号*/
charplaceNum[20];
/*飞机号*/
chardestination[20];
/*目的地*/
intbookTicketNum;
/*订票数*/
intspareTicket;
/*余票数*/
intseat[100];
/*表示该航班的座位是不是有人坐的情形*/
}airline[3];
structclientInformation/*存储客户信息*/
{
charclientNum[20];
/*姓名*/
charclientFlightNum[20];
/*航班号*/
intseatNum;
/*座位号*/
}client[300];
(2)模块接口设计
本程序执行的入口是main函数,然后用switch语句实现对各个函数的调用。
被挪用的函数都是没有形参的,函数直接实现所需要的功能。
最后,再从main函数中结束整个程序的运行
其中涉及到被挪用的函数有:
airLine()用于对航线及客户信息中的数据以文件的方式进行读入和添加;
book()用于订票时对客户信息的存储;
cancel()用于退票时对客户信息的删除;
information()用于对文件中客户信息的查询;
(3)部份函数流程图
airline()函数:
book()函数:
cancel()函数:
information()函数:
系统调试与测试
第一进入菜单,选择1时输出航线及客户信息,初始有三名乘客,别离对应于相应的航班号,飞机号,目的地,定余票数及相关信息。
选择2时,乘客可按照航线订票,订票成功则输出相应的座位号、目的地,然后可进行下一项。
选择4输出查询信息,例如飞机号、目的地、订票数等。
当多项选择完成时,选择5退出订票系统,操作结束。
(2)在没有声明函数原型的情形下挪用函数,系统默许把其处置为有任意个整型参数。
返回值也为整型。
调历时所有参数以整型传递,会出现参数不匹配的情形。
解决办法就是明确概念函数参数的类型和个数。
但在那个进程中,我的基础也欲显扎实,对C语言编程的熟悉也提升了一个层次。
设计总结
在那个《航空订票系统》C语言课程设计中,完成了大体功能,即能够检索记录,新建新记录,删除记录,利用文件对记录进行保留和读取功能。
在开始进行课程设计时,先进行界面模块的整体把握,充分了解自己要设计的程序的整体的结构,从而,在设计进程中能一个模块一个函数进行详细的构思,从而在调试程序时也显得比较方便,虽说随着程序代码的不断增多、其复杂性不断增大,但因为分模块函数一个一个的调试;
最后将其模块用多文件编译运行至没有碰到语法错误。
可是,运行结果完全不正确,常常出现乱码和死循环等问题,通过查找资料、与同窗彼此讨论、多次上机实践及请教,程序终于正确地运行。
在此进程中,通过实践的学习,学好运算机要重视实践操作,不单单是学习C语言,还有其他语言,要注重实践能力的培育,学到的不止是如何调试那个知识,学到得最多的是一种碰到不懂问题怎么去解决的方式和在碰到困难时心态的调节即无论学习什么,亲手动手去做才能取得最深刻的体会。
在此课程设计中,不仅综合了数据结构的知识,而且还综合了文件处置数据的知识,难度显得较大,但这些功能仍是能在较短的时刻内完成,却是讲义上那些属于基础和细节上的知识点总不知道如何利用、常常常利用错,如在利用switch()、while()、和getch(),scanf()和gets()等语句上,有时因用错它们,使程序无法停止。
总的来讲,这次课程设计收获很多,为了完成这次设计,参考了一些书籍,查看一些资料,对讲义知识进行总结,了解了以前常轻忽却很重要的东西,深化了对C语言的理解,进一步理解对C语言进行程序设计的方式和步骤,加深了结构化程序设计的思想,更重要的是,积累了很多调试程序的经验,为进一步学习C语言奠定了必然的基础。
4:
参考文献
[1]C/C++程序设计,王连相等,中国科学技术出版社,2004
[2]C语言程序设计,谭浩强,清华大学出版社,1999
[3]C程序设计题解与上机指导,谭浩强,清华大学出版社,1999
[4]C语言实用程序荟萃,西安电子科技大学出版社,1993
[5]C语言函数手册,机械工业出版社,1999
源程序
#include<
>
structairlineInformationBeiJingShangHaiGuangzhoueat[j]=0;
airline[i].seat[0]=1;
}
if((cfPtr1=fopen("
"
"
wb+"
))==NULL)
printf("
超级抱歉!
\n存储航线信息的文件不能打开!
\n请稍候......\n"
);
else
if((cfPtr2=fopen("
\n存储客户信息的文件不能打开!
else
{
airLine(cfPtr1,cfPtr2);
for(i=1;
i<
=30;
i++)
*"
printf("
\n欢迎利用南航订票系统!
\n有何疑问详询800-800-800!
\n"
while((choice=enterChoice())!
=5)....\n"
for(i=0;
=2;
i++)lightNum,flightnum)==0)pareTicketNum>
0)ookTicketNum++;
airline[i].spareTicketNum--;
break;
}
if(ok==1)
{
for(j=0;
j<
=99;
j++)eat[j]==0)
{
airline[i].seat[j]=1;
printf("
恭喜您!
\n您已经订上了%s次航班的%d座位,"
"
您的目的地为%s.\n"
flightnum,j+1,airline[i].destination);
for(i=0;
=299;
i++)lientName,"
)==0)lientName,Name);
strcpy(client[i].clientFlightNum,flightnum);
client[i].seatNum=j+1;
}
else
if(i>
2)
对不起!
\n这里没有该次航班,请检查后再次输入!
抱歉!
\n您所要坐的%s航班由于客满,不能为您办理!
flightnum);
for(i=1;
....\n"
=20;
i++)lientName,Name)==0)lightNum,flightnum)==0)
{
ok=1;
airline[j].bookTicketNum--;
airline[j].spareTicketNum++;
airline[j].seat[client[i].seatNum]=0;
break;
}
if(ok==1)lientName,"
strcpy(client[i].clientFlightNum,"
client[i].seatNum=0;
}
if(ok1==0)
\n您尚未订票!
\n您已经退票成功!
\n您订的不是这次航班,请检查后再次输入!
airLine(cfPtr1,cfPtr2);
fclose(cfPtr1);
fclose(cfPtr2);
}
voidprintInformation(FILE*cfPtr1,FILE*cfPtr2)
inti;
structairlineInformationairline;
structclientInformationclient;
rb+"
=50;
航线信息:
\n航班号 飞机号 目的地 定票数 余票数\n"
fread(&
airline,sizeof(structairlineInformation),1,cfPtr1);
while(!
feof(cfPtr1))
%-7s%-10s%-10s%7d%7d\n"
,,,,;
客户信息:
\n姓名 航班号 座位号\n"
client,sizeof(structclientInformation),1,cfPtr2);
feof(cfPtr2))
if(strcmp,"
)!
=0)
{
%-10s%-7s%7d\n"
,,;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 航空 订票 系统 说明书