电影票售票系统.docx
- 文档编号:4819521
- 上传时间:2022-12-09
- 格式:DOCX
- 页数:16
- 大小:123.65KB
电影票售票系统.docx
《电影票售票系统.docx》由会员分享,可在线阅读,更多相关《电影票售票系统.docx(16页珍藏版)》请在冰豆网上搜索。
电影票售票系统
电影票售票系统
电影票售票系统
电影票售票系统
一、课题内容和要求
某电影院共有n个观影厅,每个观影厅有若干个座位,座位根据不同位置具有不同价格,现在要求实现如下功能:
1)电影院为某个观影厅设置放映影片的时间和次数,并为不同时间段不同位置的座位设置不同的价格。
2)电影院向用户销售电影票,在销售时,向用户显示不同时间段不同位置的情况供用户选择。
3)按周统计每个电影厅或者每部电影的销售额。
(二)其它要求:
(1)只能使用C/C++语言,源程序要有适当的注释,使程序容易阅读
(2)至少采用文本菜单界面(如果能采用图形菜单界面更好)
(3)学生可自动增加新功能模块(视情况可另外加分)
(4)写出课程设计报告,具体要求见相关说明文档
二、需求分析
#include
usingnamespacestd;//标识符的各种可见范围
#definenum2//方便程序段的定义和修改。
#defineseats3//电影院的座位数
#defineTIME3//早上中午晚上三个时间段
intpo[num][TIME];//放哪场电影
intas[num][seats][TIME];//价格
intqw[num][seats][TIME];//买了多少张票
voidssu()
{
intk,o;
for(k=0;k { printf("请设置第%d个影厅早上放映了几部电影\n",k); scanf("%d",&po[k][0]); printf("请设置第%d个影厅中午放映了几部电影\n",k); scanf("%d",&po[k][1]); printf("请设置第%d个影厅晚上放映了几部电影\n",k); scanf("%d",&po[k][2]); } for(k=0;k { for(o=0;o { printf("请输入第%d个电影厅第%d排桌位早上的票价\n",k,o); scanf("%d",&as[k][o][0]);//输入函数 printf("请输入第%d个电影厅第%d排桌位中午的票价\n",k,o); scanf("%d",&as[k][o][1]); printf("请输入第%d个电影厅第%d排桌位晚上的票价\n",k,o); scanf("%d",&as[k][o][2]); } } } intio,pos; for(io=0;io { printf("第%d个影厅早上,中午,晚上分别放映哪几部部电影\n",io); printf("%d\t\t%d\t\t%d\n",po[io][0],po[io][1],po[io][2]); } for(io=0;io { for(pos=0;pos { printf("第%d个电影厅第%d排桌位早上,中午,晚上票价为\n",io,pos); printf("%d\t\t%d\t\t%d\t\t\n",as[io][pos][0],as[io][pos][1],as[io][pos][2]); } } printf("请输入您要的电影厅号(0-1),座位号(0-2)早上(0),中午 (1),晚上 (2)"); intk; scanf("%d%d%d",&io,&pos,&k); qw[io][pos][k]++; getchar();//有一个int型的返回值,输入的字符被存放在键盘缓冲区中 } charSHowOUT() { //system("cls");//清屏命令 printf("\n\n************欢迎进入电影售票管理系统**********\n\n"); printf("\n请选择操作选项: \n\n"); printf("\t\t\t1.电影录入\n"); printf("\t\t\t2.电影销售\n"); printf("\t\t\t3.电影统计\n"); printf("\n\n*******************************************\n\n"); printf("输入z退出"); printf("\n请输入您的选项(1,2,3): "); returngetchar(); } voidmain() { while (1) { charch=SHowOUT(); switch(ch) { case'1': { ssu(); } case'2': { pw(); } } for(io=0;io { for(pos=0;pos { printf("第%d个电影厅第%d排桌位早上,中午,晚上票价为\n",io,pos); printf("%d\t\t%d\t\t%d\t\t\n",as[io][pos][0],as[io][pos][1],as[io][pos][2]); } } printf("请输入您要的电影厅号(0-1),座位号(0-2)早上(0),中午 (1),晚上 (2)"); intk; scanf("%d%d%d",&io,&pos,&k); qw[io][pos][k]++; getchar();//有一个int型的返回值,输入的字符被存放在键盘缓冲区中 } charSHowOUT() { //system("cls");//清屏命令 printf("\n\n************欢迎进入电影售票管理系统**********\n\n"); printf("\n请选择操作选项: \n\n"); printf("\t\t\t1.电影录入\n"); printf("\t\t\t2.电影销售\n"); printf("\t\t\t3.电影统计\n"); printf("\n\n*******************************************\n\n"); printf("输入z退出"); printf("\n请输入您的选项(1,2,3): "); returngetchar(); } voidmain() { while (1) { charch=SHowOUT(); switch(ch) { case'1': { ssu(); } case'2': { pw(); } case'3': { puts("请输入您要统计的电影厅号和座位号"); inti,j; scanf("%d%d",&i,&j); printf("过去一周第%d个电影厅第%d排桌位早上,中午,晚上分别出售电影票数为\n",i,j); printf("%d\t\t%d\t\t%d\t\t\n",qw[i][j][0],qw[i][j][1],qw[i][j][2]); } } } } 五、测试数据及其结果分析 printf("\n\n************欢迎进入电影售票管理系统**********\n\n"); printf("\n请选择操作选项: \n\n"); printf("\t\t\t1.电影录入\n"); printf("\t\t\t2.电影销售\n"); printf("\t\t\t3.电影统计\n"); printf("\n\n*******************************************\n\n"); printf("输入z退出"); printf("\n请输入您的选项(1,2,3): "); returngetchar(); voidssu() { intk,o; for(k=0;k { printf("请设置第%d个影厅早上放映了几部电影\n",k); scanf("%d",&po[k][0]); printf("请设置第%d个影厅中午放映了几部电影\n",k); scanf("%d",&po[k][1]); printf("请设置第%d个影厅晚上放映了几部电影\n",k); scanf("%d",&po[k][2]); } for(k=0;k { for(o=0;o { printf("请输入第%d个电影厅第%d排桌位早上的票价\n",k,o); scanf("%d",&as[k][o][0]);//输入函数 printf("请输入第%d个电影厅第%d排桌位中午的票价\n",k,o); scanf("%d",&as[k][o][1]); printf("请输入第%d个电影厅第%d排桌位晚上的票价\n",k,o); scanf("%d",&as[k][o][2]); } } } voidpw() { intio,pos; for(io=0;io { printf("第%d个影厅早上,中午,晚上分别放映哪几部部电影\n",io); printf("%d\t\t%d\t\t%d\n",po[io][0],po[io][1],po[io][2]); } for(io=0;io { for(pos=0;pos { printf("第%d个电影厅第%d排桌位早上,中午,晚上票价为\n",io,pos); printf("%d\t\t%d\t\t%d\t\t\n",as[io][pos][0],as[io][pos][1],as[io][pos][2]); } } printf("请输入您要的电影厅号(0-1),座位号(0-2)早上(0),中午 (1),晚上 (2)"); intk; scanf("%d%d%d",&io,&pos,&k); qw[io][pos][k]++; getchar(); voidmain() { while (1) { charch=SHowOUT(); switch(ch) { case'1': { ssu(); } case'2': { pw(); } case'3': { puts("请输入您要统计的电影厅号和座位号"); inti,j; scanf("%d%d",&i,&j); printf("过去一周第%d个电影厅第%d排桌位早上,中午,晚上分别出售电影票数为\n",i,j); printf("%d\t\t%d\t\t%d\t\t\n",qw[i][j][0],qw[i][j][1],qw[i][j][2]); } } } } 电影销售列表: 六、调试过程中的问题 问题: 在调试过程时经常会遇到一些类与类内嵌时有函数未定义的情况,明明已经定义过类了,但编译时显示类未定义,对象为定义,不能互相访问,还有的时候由于定义的标示符过多,导致会编写错误标示符,还有一些小错误,比如符号漏写等,这些错误都是很好看出来。 最难的错误应该是在嵌套过程中的逻辑问题,有的时候会调用错误函数,有的时候会很混乱,整个思路就乱了。 修改: 在嵌套时要注意有没有先定义对象到另一个类中,定义函数时,如果函数体短的函数直接定义为内联函数,这样不会有忘定义的现象产生。 在类与类嵌套时应该注意类前向引用声明。 七、课程设计总结 问题: 在调试过程时经常会遇到一些类与类内嵌时有函数未定义的情况,明明已经定义过类了,但编译时显示类未定义,对象为定义,不能互相访问,还有的时候由于定义的标示符过多,导致会编写错误标示符,还有一些小错误,比如符号漏写等,这些错误都是很好看出来。 最难的错误应该是在嵌套过程中的逻辑问题,有的时候会调用错误函数,有的时候会很混乱,整个思路就乱了。 修改: 在嵌套时要注意有没有先定义对象到另一个类中,定义函数时,如果函数体短的函数直接定义为内联函数,这样不会有忘定义的现象产生。 在类与类嵌套时应该注意类前向引用声明。 类与类的逻辑问题还是静下心来梳理一下自己的思路,这是我觉得最好的办法了。 一点小的收获能够让我看见更大的力量,感觉自己浑身充满着干劲,真的特别希望能够通过这次课程设计,促使自己将以前没有看过的书都看一遍、由此来使自己的C++水平更上一层楼! 这次的课程设计也让我看到了同学之间相互帮助的力量,我认为我们班进行的这次课程设计不仅仅是一次锻炼,还让我们见到了同学之间的相互帮助,当一个同学在处理一些问题遇到困难的时候,总会看到有一些其他会做的同学积极的去帮助他解决这些难题。 这次课程设计让我看到了一个团队的工作,团队需要个人,个人也离不开团队,大家都在努力发扬团结协作的精神,因为每个人都希望自己的课程设计这门课能够顺利的通过。 刚开始的时候,大家就已经做好了迎接挑战的准备,据我私下里了解,有些同学为了这次课程设计,从不熬夜的他们基本每天晚上研究到夜里一两点才睡,真的很敬佩这些同学的干劲。 其实在这个班级,C++这门课程还是有一定的区分度的,但好像起先就分配好了各自的任务,底子薄的同学先去自己编写一些自己能够写出的东西,而后请功底好的同学进行加工,将程序完善化。 关于每个程序要求做出来的界面,以及对每个题目的理解,大家都会经常表达自己的看法,往往会把一些某个人想不到的问题给提出来,减少了每个人为了解决一些常见的错误而绞尽脑汁而所用的时间,不论结果如何,大家都会经常聚在一起讨论各个方案的可行性。 在课程设计中只有一个人知道如何让程序正确、如何让程序完美是远远不够的,必须让每个人都知道,这样可以促进大家集体学习的积极性,也能够促使大家相互学习。 倘若每个人都只顾着自己的那一点点东东西,那恐怕最终不能通过这次课程设计使自己的知识有所长进,就连跟同学之间相互学习的那样一种乐趣他也体会不到吧! 所以说团结协作是我们成功的一项非常重要的保证。 而这次设计也正好锻炼我们这一点,这也是非常宝贵的。 现在差不多大家的程序都已经编好,我想,当大家现在回想,那两个星期每天都花大量的时间应该也会感觉是值得吧! 在这个过程中,我也曾经因为理论知识和实践能力的缺乏失落过,也曾经仿真成功而热情高涨。 生活就是这样,汗水预示着结果也见证着收获。 劳动是人类生存生活永恒不变的话题。 虽然这个题目或许对某些人来说只是一次的普通的课程设计,可是平心而论,也耗费了我不少的心血,这就让我不得不佩服我们班那些C++学的特别好的同学,真不知道他们是如何做到的,而我更佩服放入是那些专门搞软件开发的技术前辈,通过这次课程设计才知道编一个简单的系统需要消耗多大的气力,更别说那些成千上万行的大系统,直到现在我才意识到老一辈对我们社会的付出,为了人们的生活更美好,他们为我们社会所付出多少心血啊! 通过这次课程设计,我想说: 为完成这次课程设计我们确实很辛苦,但苦中仍有乐,和班级同学一起在同一个教室学习努力的日子,让我们有说有笑,相互帮助,配合默契,多少人间欢乐在这里洒下,大学里一年的相处还赶不上这十来天的学习,我感觉我和同学们之间的距离更加近了。 这个题目一直坚持做下来确实很累,但当我们每个人的程序运行都宣告成功的时候,当我们点击运行按钮,显示没有错误,当我们一句显示屏上的要求去验证任务书上所标明的功能,并且都能实现的时候,内心深处尽然有一种说不出的兴奋和激动。 这两个星期的种种艰辛在此时此刻都变成了最甜美的回忆! 对我而言,这不仅仅是一次课程设计,更多的给我带来的知识上的重大收获,精神上的丰收更加可喜。 它让我懂得了看书的重要性,让我明白团结合作的重要行,更让我知道了学无止境的道理。 通达学院程序设计报告 (2013/2014)学年第2学期 题目: 学生考勤系统 专业网络工程 学生姓名王阳 班级学号13002511 指导教师李养群 指导单位南京邮电大学通达学院 日期2014.12.18 评分细则 评分项 成绩 遵守机房规章制度(5分) 上机时的表现(5分) 学习态度(5分) 程序准备情况(5分) 程序设计能力(10分) 团队合作精神(5分) 课题功能实现情况(10分) 算法设计合理性(10分) 用户界面设计(10分) 报告书写认真程度(5分) 内容详实程度(10分) 文字表达熟练程度(10分) 回答问题准确度(10分) 评分等级 备注 评分等级有五种: 优秀、良好、中等、及格、不及格
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电影票 售票 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)