C++课程设计报告 航空订票系统的菜单设计.docx

上传人:b****8 文档编号:9901596 上传时间:2023-05-21 格式:DOCX 页数:25 大小:208.76KB
下载 相关 举报
C++课程设计报告 航空订票系统的菜单设计.docx_第1页
第1页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第2页
第2页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第3页
第3页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第4页
第4页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第5页
第5页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第6页
第6页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第7页
第7页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第8页
第8页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第9页
第9页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第10页
第10页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第11页
第11页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第12页
第12页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第13页
第13页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第14页
第14页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第15页
第15页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第16页
第16页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第17页
第17页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第18页
第18页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第19页
第19页 / 共25页
C++课程设计报告 航空订票系统的菜单设计.docx_第20页
第20页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

C++课程设计报告 航空订票系统的菜单设计.docx

《C++课程设计报告 航空订票系统的菜单设计.docx》由会员分享,可在线阅读,更多相关《C++课程设计报告 航空订票系统的菜单设计.docx(25页珍藏版)》请在冰点文库上搜索。

C++课程设计报告 航空订票系统的菜单设计.docx

C++课程设计报告航空订票系统的菜单设计

C++课程设计(论文)任务书

电气学  院  电气工程及其自动化专  业9班  

一、课程设计(论文)题目:

航空订票系统的菜单设计  

二、课程设计(论文)工作自2012年6月13日起至2012年6月24日止

三、课程设计(论文)地点:

计算中心机房

四、课程设计(论文)内容要求:

1.本课程设计的目的

(1)进一步巩固和加深对“C++程序设计”课程基本知识的理解和掌握,了解C++语言在项目开发中的应用。

(2)学习程序设计开发的一般方法,了解和掌握项目开发过程及方式,培养正确的设计思想和分析问题、解决问题的能力,特别是项目设计能力。

(3)通过对标准化、规范化文档的掌握并查阅有关技术资料等,培养项目设计开发能力,同时提倡团队合作精神。

2.课程设计的任务及要求

(1)基本要求:

(1)对系统功能进行需求分析;

(2)使用VisualC++编译器进行程序编译;

(3)提出系统的设计方案;

(4)编写源程序代码并进行调试。

(2)创新要求

在基本要求达到后,可进行创新设计。

(3)课程设计报告撰写及装订要求

课程设计报告的撰写要求表述简明,图表准确。

报告按如下内容和顺序用A4纸进行打印并装订成册。

(1)封面

采用统一的课程设计封面,并按要求填写好封面要求的个人信息和选题。

(2)设计任务书

(3)评阅书

(4)目录

(5)正文

(6)主要参考文献

(4)课程设计评分标准:

(1)达到课程设计的目的与要求,程序的可读性较好,并调试正确,60分;

(2)能正确回答设计的中老师所提问题,可增加10分;

(3)课程设计报告书写规范整齐,可增加10分;

(4)心得体会认真总结,可增加10分;

(5)程序有创新性,可增加10分;

成绩评定实行优秀、良好、中等、及格和不及格五个等级。

不及格者需重做。

(5)课程设计进度安排

(1)准备阶段(6学时):

选择设计题目、了解设计目的要求、查阅相关资料。

(2)程序模块设计分析阶段(8学时):

程序总体设计、详细设计。

(3)代码编写调试阶段(10学时):

程序模块代码编写、调试、测试。

(4)撰写论文阶段(6学时):

总结课程设计任务和设计内容,撰写课程设计论文。

(6)课程设计题目具体要求

(1)程序运行时,首先给出两个菜单选项的内容和输入提示:

管理员进入按1,客户进入按2:

若输入其它字符,则显示输入错误,请重新输入。

(2)若用户选择是管理员身份进入,还需要输入密码,验证正确后,则可进入系统,显示如下6个菜单选项。

若密码验证错误,则提示密码错误,并返回主界面让用户重新选择身份。

1定购机票

2反退机票

3查看航班信息

4查询航班信息

5修改航班信息

0返回主界面

进入系统后,用户可以根据需要输入(0-5)选项实现不同功能。

若输入其它字符,则显示输入错误,请重新选择。

(3)若用户是以客户身份进入,则进入系统后,将显示如下5个菜单选项:

1定购机票

2反退机票

3查看航班信息

4查询航班信息

0返回主界面

进入系统后,用户可以根据需要输入(0-4)的选项实现不同功能。

若输入其它字符,则显示输入错误,请重新选择。

学生签名:

2012年6月20日

课程设计(论文)评阅意见

序号

项目

等   级

优秀

良好

中等

及格

不及格

1

课程设计态度评价

2

出勤情况评价

3

任务难度评价

4

工作量饱满评价

5

设计中创新性评价

6

论文书写规范化评价

综合评定等级

评阅人职称教授

2012年6月25日

目 录

第1章系统概要5

第2章设计思路与算法6

第3章源程序代码7

第4章运行结果及分析14

第5章心得体会20

参考文献21

 

第1章系统概要

菜单是应用程序非常重要的组成部分,通过菜单,应用程序可以实现不同

的功能,通过本系统的设计,可以实现如下功能:

(1)程序运行时,首先给出两个菜单选项的内容和输入提示:

管理员进入按1,客户进入按2:

若输入其它字符,则显示输入错误,请重新输入。

(2)若用户选择是管理员身份进入,还需要输入密码,验证正确后,则可进入系统,显示如下6个菜单选项。

若密码验证错误,则提示密码错误,并返回主界面让用户重新选择身份。

1定购机票

2反退机票

3查看航班信息

4查询航班信息

5修改航班信息

0返回主界面

进入系统后,用户可以根据需要输入(0-5)选项实现不同功能。

若输入其它字符,则显示输入错误,请重新选择。

(3)若用户是以客户身份进入,则进入系统后,将显示如下5个菜单选项:

1定购机票

2反退机票

3查看航班信息

4查询航班信息

0返回主界面

进入系统后,用户可以根据需要输入(0-4)的选项实现不同功能。

若输入其它字符,则显示输入错误,请重新选择。

(4)若选择1定购机票或2反退机票,则出现验证,验证码输入正确方可订,或退票。

管理员选择5修改航班信息,则需要再次输入管理员密码确认修改航班信息。

第2章设计思路与算法

图2-1简略思维流程图

第3章源程序代码

#include

#include

#include

#include//提供清屏函数system("cls")和延时函数Sleep()

usingnamespacestd;

voidfn1();//实现管理员信息操作

voidfn2();//实现客户进行信息操作

voiddg();//订购机票

voidft();//反退机票

voidck();//查看航班信息

voidcx();//查询航班信息

voidxg();//修改航班信息

voidyz(inta,intb,intj)

{

while(j)

{

a=1000+rand()%9999;//rand()提供随机数

cout<<"验证码:

"<

";

cin>>b;

if(b==a)

{

cout<<"验证码输入正确"<

}

elsecout<<"验证码输入错误!

\n"<<"不订(退)票了!

请输入0;重新验证!

请输入1"<

cin>>j;

}

}

voidmain()

{

cout<<"*******************************航空订票系统********************************"<

cout<

cout<<"华东交通大学"<

cout<<""<

cout<<"电气与电子工程学院"<

cout<<""<

cout<<"11电气9班?

?

?

?

?

?

"<

cout<<""<

cout<<"2011021?

?

?

201102?

?

?

"<

cout<<""<

cout<<"********************************"<

cout<<"*************************"<

cout<<"******************************"<

cout<<"******************************"<

cout<<"***************************************"<

cout<<"**********************************************"<

cout<<""<

cout<<"******************************************************************************"<

cout<<"请等待5秒。

"<

Sleep(5000);//单位为1微秒,5000微秒=5秒,即此屏幕保留5秒

system("cls");//清屏函数,进入主菜单

cout<

inti;

for(i=1;i<=16;i++)

cout<<"";

for(i=1;i<=24;i++)

cout<<"*";cout<

cout<<":

^-^欢迎来到航空订票系统^-^:

";cout<

for(i=1;i<=16;i++)

cout<<"";

for(i=1;i<=24;i++)

cout<<"*";cout<

inta=1;

cout<

"<<'\n'<

while(a)

{

cin>>a;

switch(a)

{

case1:

fn1();break;//实现管理员信息操作

case2:

fn2();break;//实现客户进行信息操作

case0:

cout<

"<

default:

cout<<"输入错误!

请重新输入1管理员;2客户"<

}

}

}

voidfn1()

{

chars1[7]={"123456"},s2[7];

cout<<"管理员请输入密码:

"<

cout<

cin>>s2;

for(inti=1;i<3&&strcmp(s1,s2)!

=0;i++)

{

cout<<"密码错误!

"<<"您还有"<<(3-i)<<"次输入机会!

"<<'\n'<<"请输入密码:

"<

cin>>s2;

}

if(i>=3&&strcmp(s1,s2)!

=0)

{

cout<<"已返回主菜单\n"<

return;

}

cout<<"密码正确!

您可以输入0~5选择功能:

"<

cout<

<<"3.查询航班信息"<<'\n'<

<<"5.修改航班信息"<<'\n'<

intb;

while(b)

{

cin>>b;

if(b>=0&&b<=5)

{

switch(b)

{

case1:

dg();break;//订购机票

case2:

ft();break;//反退机票

case3:

ck();break;//查看航班信息

case4:

cx();break;//查询航班信息

case5:

xg();break;//修改航班信息

case0:

cout<<"已返回主菜单"<<'\n'<

<<"客户进入请输2\n退出系统请输入0"<

}

}

elsecout<<"输入错误!

请重新输入:

"<

}

}

voidfn2()

{

cout<

<

"4.查看航班信息"<<'\n'<

intc;

while(c)

{

cin>>c;

if(c>=0&&c<=4)

{

switch(c)

{

case1:

dg();break;//订购机票

case2:

ft();break;//反退机票

case3:

ck();break;//查看航班信息

case4:

cx();break;//查询航班信息

case0:

{cout<<"已返回主菜单"<<'\n'<

<<"客户进入请输2\n退出系统请输入0"<

}

}

elsecout<<"输入错误!

请重新输入:

"<

}

}

voiddg()

{

inta,b,d,m=1;charx[20],y[20],z[20];

cout<

每张身份证只能订1~3张,多订无效。

"<

cout<

";

cin>>d;

if(d>0&&d<4)

{

cout<

";cin>>x;

cout<<"\n"<

";cin>>y;

cout<<'\n'<

";cin>>z;

}

else

{

cout<

\n您已返回功能选择界面,输入0~5选择功能:

";

return;

}

yz(a,b,m);

if(m==0)

{

cout<<"您已返回功能选择界面,输入0~5选择功能:

"<

return;

}

elseif(b==a)

{

cout<<"订票成功!

身份证号为"<

"<<'\n';

cout<<"\n您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!

"<

return;

}

}

voidft()

{

inta,b,n=1;

chare[20];

cout<<"请输入退票流水号:

";

cin>>e;

yz(a,b,n);

if(n==0)

{

cout<<"您已返回功能选择界面,输入0~5选择功能:

"<

return;

}

elseif(b==a)

{

cout<<"流水号为"<

cout<<"您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!

"<

return;

}

}

voidck()

{

charf[20];

cout<<"请输入您需要查看的航班航班号:

";

cin>>f;

cout<<"您要查的是"<

"<

cout<<"您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!

"<

return;

}

voidcx()

{

charg[20];

cout<<"请输入您需要查询的航班航班号:

";

cin>>g;

cout<<"航班号为"<

"<

cout<<"您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!

"<

return;

}

voidxg()

{

charh[20],y[20];

cout<<"请输入需要改变路线的票件流水号:

";

cin>>h;

cout<<"请输入新的路线编号:

";

cin>>y;

chart1[7]={"123456"},t2[7];

cout<<"更改航班信息,请输入管理员密码确认:

"<

cout<

cin>>t2;

for(inti=1;i<3&&strcmp(t1,t2)!

=0;i++)

{

cout<<"密码错误!

"<<"您还有"<<(3-i)<<"次输入机会!

"<<'\n'<<"请输入密码:

"<

cin>>t2;

}

if(i>=3&&strcmp(t1,t2)!

=0)

{

cout<<"您已返回管理员功能选择菜单,请输入0~5选择功能:

"<

return;

}

cout<<"密码正确!

"<

cout<<"票件流水号为"<

cout<<"改后路线是编号是"<

cout<<"您现在所在(客户/管理员)菜单,请输0~(4/5)选择执行功能,退出请输入0!

"<

return;

}

 

第4章运行结果及分析

图4-1欢迎及编辑人信息界面

图案输出,等待5秒的执行由清屏函数system("cls")和延时函数Sleep(),来实现,Sleep(5000);中5000,单位为1微秒,5000微秒=5秒,,所以在此屏幕保留5秒,5秒后清屏函数system("cls")作用后,进入主菜单。

图4-2主菜单

主菜单提供最初选择,输入1管理员,输入2客户,输入0退出系统,输入其它数字,显示输入错误,请重新输入!

管理员需输入密码确认身份。

身份选择采用switch语句,case1:

fn1()输入1,则选择管理员功能系统,运行fn1()中的语句;case2:

fn2()客户,执行客户函数fn2()中的语句;case0:

cout<

"<

cout<<"输入错误!

请重新输入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:

cout<<"输入错误!

请重新输入1管理员;2客户"<

需重输。

 

图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("cls")和延时函数Sleep()。

也又进一步熟悉了所学C++知识的运用,如形式参数与main函数参数的数据调用,交换。

对C++几大语句也更加熟悉了,if语句,switch语句,for语句,while语句,返回值类型,return,等等。

在课设中对C++知识的运用很真切的感受的了,同时也增长的我的C++方面的知识。

在课设中,也不单单是知识和C++编辑技术的到了提高。

同时,在解决问题方面,遇到困难处理方面,对生活也有一定锻炼。

在课设里面,经常会遇到程序无法正常运行,要靠自己的知识调试,不懂得也只能靠自己看书理解。

在程序里面有个问题很久都解决不了,有几次都想放弃了,但在几天时间里经常想,思考如何能使程序按要求的正常运行。

在后来也

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

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2