C课程设计报告航空订票系统的菜单设计Word文件下载.docx
- 文档编号:21524152
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:21
- 大小:120.96KB
C课程设计报告航空订票系统的菜单设计Word文件下载.docx
《C课程设计报告航空订票系统的菜单设计Word文件下载.docx》由会员分享,可在线阅读,更多相关《C课程设计报告航空订票系统的菜单设计Word文件下载.docx(21页珍藏版)》请在冰豆网上搜索。
(3)代码编写调试阶段(10学时):
程序模块代码编写、调试、测试。
(4)撰写论文阶段(6学时):
总结课程设计任务和设计内容,撰写课程设计论文。
(6)课程设计题目具体要求
(1)程序运行时,首先给出两个菜单选项的内容和输入提示:
管理员进入按1,客户进入按2:
若输入其它字符,则显示输入错误,请重新输入。
(2)若用户选择是管理员身份进入,还需要输入密码,验证正确后,则可进入系统,显示如下6个菜单选项。
若密码验证错误,则提示密码错误,并返回主界面让用户重新选择身份。
1定购机票
2反退机票
3查看航班信息
4查询航班信息
5修改航班信息
0返回主界面
进入系统后,用户可以根据需要输入(0-5)选项实现不同功能。
若输入其它字符,则显示输入错误,请重新选择。
(3)若用户是以客户身份进入,则进入系统后,将显示如下5个菜单选项:
进入系统后,用户可以根据需要输入(0-4)的选项实现不同功能。
若输入其它字符,则显示输入错误,请重新选择。
学生签名:
2012年6月20日
课程设计(论文)评阅意见
序号
项目
等 级
优秀
良好
中等
及格
不及格
1
课程设计态度评价
2
出勤情况评价
3
任务难度评价
4
工作量饱满评价
5
设计中创新性评价
6
论文书写规范化评价
综合评定等级
评阅人职称教授
2012年6月25日
目 录
第1章系统概要
菜单是应用程序非常重要的组成部分,通过菜单,应用程序可以实现不同
的功能,通过本系统的设计,可以实现如下功能:
(4)若选择1定购机票或2反退机票,则出现验证,验证码输入正确方可订,或退票。
管理员选择5修改航班信息,则需要再次输入管理员密码确认修改航班信息。
第2章设计思路与算法
图2-1简略思维流程图
第3章源程序代码
#include<
iostream.h>
iomanip.h>
string>
windows.h>
//提供清屏函数system("
cls"
)和延时函数Sleep()
usingnamespacestd;
voidfn1();
//实现管理员信息操作
voidfn2();
//实现客户进行信息操作
voiddg();
//订购机票
voidft();
//反退机票
voidck();
//查看航班信息
voidcx();
//查询航班信息
voidxg();
//修改航班信息
voidyz(inta,intb,intj)
{
while(j)
{
a=1000+rand()%9999;
//rand()提供随机数
cout<
<
"
验证码:
a<
\n请输入验证码:
;
cin>
>
b;
if(b==a)
{
cout<
验证码输入正确"
endl;
break;
}
elsecout<
验证码输入错误!
\n"
不订(退)票了!
请输入0;
重新验证!
请输入1"
j;
}
}
voidmain()
cout<
*******************************航空订票系统********************************"
华东交通大学"
"
电气与电子工程学院"
11电气9班?
?
?
2011021?
201102?
********************************"
*************************"
******************************"
***************************************"
**********************************************"
******************************************************************************"
请等待5秒。
。
Sleep(5000);
//单位为1微秒,5000微秒=5秒,即此屏幕保留5秒
system("
);
//清屏函数,进入主菜单
inti;
for(i=1;
i<
=16;
i++)
=24;
*"
cout<
:
^-^欢迎来到航空订票系统^-^:
//做出欢迎界面;
inta=1;
setw(25)<
请输入代号:
'
\n'
setw(18)<
管理员进入请输1客户进入请输2\n退出系统请输入0"
while(a)
cin>
a;
switch(a)
case1:
fn1();
break;
case2:
fn2();
case0:
setw(50)<
感谢您的使用,欢迎再次光临!
default:
输入错误!
请重新输入1管理员;
2客户"
voidfn1()
{
chars1[7]={"
123456"
},s2[7];
管理员请输入密码:
注意最多只能输入3次"
s2;
for(inti=1;
i<
3&
&
strcmp(s1,s2)!
=0;
i++)
{
cout<
密码错误!
您还有"
(3-i)<
次输入机会!
请输入密码:
cin>
}
if(i>
=3&
=0)
已返回主菜单\n"
管理员进入请输1客户进入请输2\n退出请输入0"
return;
密码正确!
您可以输入0~5选择功能:
1.订购机票"
2.反退机票"
setw(29)\
<
3.查询航班信息"
setw(29)<
4.查看航班信息"
5.修改航班信息"
setw(27)<
0.返回主界面"
intb;
while(b)
if(b>
=0&
b<
=5)
switch(b)
case1:
dg();
ft();
case3:
ck();
case4:
cx();
case5:
xg();
已返回主菜单"
管理员进入请输1"
setw(20)\
<
客户进入请输2\n退出系统请输入0"
return;
//返回主菜单
输入错误!
请重新输入:
voidfn2()
\
<
"
intc;
while(c)
c;
if(c>
c<
=4)
switch(c)
case0:
{cout<
}//返回主菜单
请重新输入:
voiddg()
inta,b,d,m=1;
charx[20],y[20],z[20];
setw(60)<
注意:
每张身份证只能订1~3张,多订无效。
setw(31)<
请输入订票张数:
d;
if(d>
0&
d<
4)
请输入身份证号:
x;
请输入起点:
y;
请输入终点:
z;
else
订票无效!
\n您已返回功能选择界面,输入0~5选择功能:
return;
yz(a,b,m);
if(m==0)
您已返回功能选择界面,输入0~5选择功能:
return;
elseif(b==a)
订票成功!
身份证号为"
x<
的用户,您订票从"
y<
飞往"
z<
的机票"
d<
张,谢谢光临!
\n您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!
voidft()
inta,b,n=1;
chare[20];
请输入退票流水号:
e;
yz(a,b,n);
if(n==0)
elseif(b==a)
流水号为"
e<
的票已退,谢谢您的光临"
您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!
voidck()
charf[20];
请输入您需要查看的航班航班号:
f;
您要查的是"
f<
航班;
\n线路为南昌飞往上海谢谢!
您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!
return;
voidcx()
charg[20];
请输入您需要查询的航班航班号:
g;
航班号为"
g<
的航线是从**飞往**,途径**。
voidxg()
charh[20],y[20];
请输入需要改变路线的票件流水号:
h;
请输入新的路线编号:
chart1[7]={"
},t2[7];
更改航班信息,请输入管理员密码确认:
t2;
strcmp(t1,t2)!
您已返回管理员功能选择菜单,请输入0~5选择功能:
票件流水号为"
h<
路线已换"
改后路线是编号是"
第4章运行结果及分析
图4-1欢迎及编辑人信息界面
图案输出,等待5秒的执行由清屏函数system("
)和延时函数Sleep(),来实现,Sleep(5000);
中5000,单位为1微秒,5000微秒=5秒,,所以在此屏幕保留5秒,5秒后清屏函数system("
)作用后,进入主菜单。
图4-2主菜单
主菜单提供最初选择,输入1管理员,输入2客户,输入0退出系统,输入其它数字,显示输入错误,请重新输入!
管理员需输入密码确认身份。
身份选择采用switch语句,case1:
fn1()输入1,则选择管理员功能系统,运行fn1()中的语句;
case2:
fn2()客户,执行客户函数fn2()中的语句;
case0:
退出系统;
default:
除0、1、2外的其他数,显示输出错误!
需重输。
图4—3管理员进入系统
(1)
验证密码采用字符数组,定义两个数组s1[7],s2[7],运用比较运算符strcmp()比较两个数组,相等则strcmp(s1,s2)==0,否则不等。
图4-4管理员进入系统
(2)
密码错误3次,则return回主菜单,重新选择身份。
图4-5客户进入系统
输入2,运行fn2()中的语句。
客户选择功能菜单。
图4-6输入错误,请重新输入!
main函数中,switch语句选项:
default:
图4-7操作功能1(选择功能1.订购机票)
管理员验证身份成功后或客户进入,选择功能1。
则出现如上所示界面。
由于身份证号过长,采用数的变量定义记时可以,也不方便输出。
所以采用字符变量定义——char。
起点、终点也都采用字符char定义。
而验证码的选取,由随机函数rand()随机出数。
验证码输入正确方可订票成功。
验证码的核对,采用函数yz(inta,intb,intj)进行运算。
在订购机票函数dg()和反退机票函数ft()中分别加入yz(a,b,m)h和yz(a,b,n),增加订票退票需输入验证码确认功能。
图4-8操作功能2(功能2,、3、4)
退票输入验证码,其余都是cout<
”…”<
了。
图4-9管理员操作功能5(修改航班信息)
本来只是cout<
”………”|<
后来加入再输入管理员密码确认。
与上面管理员进入是输入密码进入程序相同。
图4-10返回主菜单并退出系统
执行完一个功能后,在提示输入0~(4/5)选择功能时,输入0,返回主菜单,再选择身份,输入0退出系统。
第5章心得体会
经过一个学期的C++程序设计的学习,从开始只是对C++感到新鲜到开始熟悉C++,爱上C++。
如同一场恋爱。
C++中的逻辑思考,递推运算非常吸引我。
因为对C++真的比较喜欢,所以在不断地理论学习和上机做题中,学到越来越多的C++编辑及其功能的知识,真正感觉到那种成长,知识的增长。
在学期末时,老师说要课设,其实我当时还有点没信心,因为听到要做什么小游戏什么的,我说我有的实验里面的题目都不会,要做个小游戏啥的,那不麻烦!
主要是我认为课设做完就像个产品一样,封装起来了,跟平时接触到的一些软件一样。
但在后来才发现,只是运行有那个功能就是,不用自己去学包装。
这就有信心了!
最后也把课设做得挺好,令自己也挺满意!
在做完课设后,感觉自己通过课设受益匪浅。
在课设中,不仅几乎把上课学到的都用上了得到了知识的巩固,而且也学到了还没有学的知识,如程序中的用到的随机出数函数rand(),清屏函数system("
)和延时函数Sleep()。
也又进一步熟悉了所学C++知识的运用,如形式参数与main函数参数的数据调用,交换。
对C++几大语句也更加熟悉了,if语句,switch语句,for语句,while语句,返回值类型,return,等等。
在课设中对C++知识的运用很真切的感受的了,同时也增长的我的C++方面的知识。
在课设中,也不单单是知识和C++编辑技术的到了提高。
同时,在解决问题方面,遇到困难处理方面,对生活也有一定锻炼。
在课设里面,经常会遇到程序无法正常运行,要靠自己的知识调试,不懂得也只能靠自己看书理解。
在程序里面有个问题很久都解决不了,有几次都想放弃了,但在几天时间里经常想,思考如何能使程序按要求的正常运行。
在后来也是终于调好了。
遇到的困难就是,程序运行要求是:
管理员进入系统需输入密码,有三次输入机会。
问题就在于,在第三次输入密码时,无论是密码正确还是密码错误都会回到主菜单重新选择身份。
这肯定就是if语句的运行条件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 课程设计 报告 航空 订票 系统 菜单 设计