收藏 分享(赏)

c语言课设电影院售票系统.doc

上传人:精品资料 文档编号:8598166 上传时间:2019-07-04 格式:DOC 页数:28 大小:308.19KB
下载 相关 举报
c语言课设电影院售票系统.doc_第1页
第1页 / 共28页
c语言课设电影院售票系统.doc_第2页
第2页 / 共28页
c语言课设电影院售票系统.doc_第3页
第3页 / 共28页
c语言课设电影院售票系统.doc_第4页
第4页 / 共28页
c语言课设电影院售票系统.doc_第5页
第5页 / 共28页
点击查看更多>>
资源描述

1、沈 阳 航 空 航 天 大 学课 程 设 计学 号 _153407020324班 级 _1534070203 姓 名 _ 李蕴琪 _ 指导教师 孙玉霞 2015 年 9 月 21 日沈 阳 航 空 航 天 大 学课 程 设 计 任 务 书学院:自动化学院 专业:自动化 班级:1534070203学号:153407020324 题目:电影院售票系统一、课程设计时间二、课程设计内容用 C 语言编写软件完成以下任务:某电影院共有 A、B 、C、D 四个场次在放映,具体的数据如下:场次 电影名称 放映时间 座位数量 已售票数A 钢铁侠 3 18:30 150 0B 致青春 19:30 150 0C 姜

2、戈 20:00 150 0D 生化危机 4 20:20 100 0请写程序模拟这个售票过程(电影开场 10 分钟内允许退票,时间函数见参考资料) ,将所有的信息保存到文件中。三、课程设计要求程序质量: 贯彻结构化的程序设计思想。 用户界面友好,功能明确,操作方便。 用户界面中的菜单至少应包括“售票” 、 “退票” 、 “统计满座率” 、 “退出”4 项。 代码应适当缩进,并给出必要的注释,以增强程序的可读性。课程设计说明书: 课程结束后,上交课程设计说明书和源程序。课程设计说明书的内容参见提供的模板。四、指导教师和学生签字指导教师:_ 学生签名:_五、成绩六、教师评语沈阳航空航天大学设计用纸I

3、目录一、需求分析 2二、设计分析 3三、主要界面截图 8四、技术要点 .10五、个人总结 .11六、参考文献 .12七、源程序 .12沈阳航空航天大学设计用纸2一、需求分析根据任务书给定的“课程设计内容”和“课程设计要求”作如下的需求分析。该系统是一个较典型的售票操作系统,其使用者为工作人员和广大消费者,系统应该具有安全、稳定、功能齐全的特点。1. 安全性分析该系统管理的数据直接对电影院的收入产生影响,数据量较大且是一种基础性数据,能够为电影院管理提供重要参考,该程序简洁明了,无赘余语句,增加了程序运行的安全性。2. 稳定性分析指系统比较健壮,只要是用户的合理操作,系统都应给出合理正确的回应,

4、而不是出现令用户感到意外的系统错误或系统崩溃。沈阳航空航天大学设计用纸33. 主要功能分析(1)显示售票系统:这个程序可以模拟电影院售票系统,可以供顾客参考,另外这个系统简单明了,可以让顾客在选择看电影时更容易。(2)显示满座率:这个系统可以统计电影院的满座率,给管理人员提供了方便,可以更快的计算利润。(3)显示退票系统:这个程序可以模拟电影院退票系统,可以供顾客参考,另外这个系统方便快捷,可以让顾客在退票时更加容易方便。二、设计分析主要有四个功能模块,每个模块对应一个 C 语言自定义函数。这些函数原型及其功能简述如下:(1) 添加票据信息函数:将各个场次的电影名称、放映时间、总票数以及剩余票

5、数添加到函数中,用户在进行买票时对当前数据进行参沈阳航空航天大学设计用纸4考,最后决定自己购买哪场电影,为顾客带来方便。(2) 售票函数:在该功能模块中,顾客可根据提示信息,选择自己想要购买的电影票,选择适合自己的时间段,自己喜欢的电影以及购买的数量,同时,系统会根据当前票据信息对所买的票数进行判断,如不符合实际情况,会给出提示。(3) 退票函数:在该功能模块中,顾客可根据提示信息,选择自己想要 退掉的电影票,选择退票的电影以及退票的数量,同时,系统会根据当前票据信息及时间信息对所退的票据进行 判断,如不符合实际情况,会给出提示不予退票。(4)计满座率函数:该部分里,每场电影售出票时都会进行累

6、加,得出总票沈阳航空航天大学设计用纸5数,用售出的票数除上总座位数,即可得出该场的满场率。1. 程序总体结构图(N-S 框图)打开文件 movie_information.txt是if(fp=NULL)否“打开文件失败”返回exit(0)读取文件内容读取至文件末尾关闭文件图 1 文件读取程序图沈阳航空航天大学设计用纸6输入要观看的电影名称if(strcmp(infi.name,s)=0)是 否输出无此电影输出电影信息电影未播放否是输出此电影已播放输入票数剩余座位数减一卖票数加一图 2 买票系统程序图沈阳航空航天大学设计用纸7输入想要退票的电影if(strcmp(infi.name,s)=0)是

7、 否输 输出电影信息出无此 电影未播出电 是 否影 输出 无法 输入票数退票 座数加一卖票数减一图 3 退票系统程序图沈阳航空航天大学设计用纸8Stime( )Menu( )Read( )输入选项 choiceChoice=1?是 否buy_ choice=2?ticket() 是 否quit_ choice=3?ticket() 是 否manzuo() choice=4?是 否exit(0)图 3 主程序程序图沈阳航空航天大学设计用纸93、 主要界面截图图 1 菜单界面图 2 买票界面沈阳航空航天大学设计用纸10沈阳航空航天大学设计用纸11图 3 退票界面沈阳航空航天大学设计用纸12图 4

8、满座率界面沈阳航空航天大学设计用纸13四、技术要点(对本程序贡献较大的 C 语言知识点;重要算法的设计与实现)1.结构体的应用:定义了结构体用来描述电影票的放映时间、座位数量、已售票数、满场率、票价,具体定义如下:struct infchar rate20;char name20;int time_hour;int time_min;int seat;int sell;沈阳航空航天大学设计用纸14所定义的结构体主要用于定义数组2.部分函数的说明:售票函数 buy( ): 在该函数部分,加了一个判断语句,判断顾客所输入的购买票数是否符合当前情况,若不符合,将给出相应的提示具体程序如下:print

9、f(“请输入你要观看的电影名称:“);scanf(“%s“,s);for(i=0;i#include#include#include#include#includestruct infchar rate20;char name20;int time_hour;int time_min;int seat;int sell;inf10;char n20;沈阳航空航天大学设计用纸17int p;struct tm *ptr;void menu()printf(“*menu*n“);printf(“* 1 买票nr“);printf(“* 2 退票nr“);printf(“* 3 满座率nr“); p

10、rintf(“* 4 退出nr“); printf(“*n“);void read()int i,re;FILE *fp;fp=fopen(“movie_information.txt“,“r“);if(fp=NULL)printf(“文件打开失败!“);沈阳航空航天大学设计用纸18exit(0);for(i=0;i+)re=fscanf(fp,“%s %s %d %d %d %dn“,infi.rate,infi.name,if(re=EOF) break;p=i;for(i=0;itm_year+1900,ptr-tm_mon+1,ptr-tm_mday,ptr-tm_hour,ptr-t

11、m_min,ptr-tm_sec);int minate(int q,int p)/将时间全部转换为分钟int time_sum;time_sum=60*q+p;return time_sum;void buy_ticket()int i,a;char s20;printf(“请输入你要观看的电影名称:“);scanf(“%s“,s);for(i=0;i minate(ptr-tm_hour,ptr-tm_min)printf(“请输入你要购买的票数:“);scanf(“%d“,infi.seat-=a;infi.sell+=a;else printf(“此电影在今日%d:%d 已经开始播放,

12、已经无票 n“,infi.time_hour,infi.time_min);baocun();沈阳航空航天大学设计用纸22void quit_ticket()int i,m;char s20;printf(“请输入你退票电影名称:“);scanf(“%s“,s);printf(“请输入你要退票的数目:“);scanf(“%d“,for(i=0;ip;i+)if(strcmp(infi.name,s)=0)printf(“退票成功!n 退票后的电影信息如下: n“);printf(“%s %s %d:%d %d %dn“,infi.rate,infi.name,infi.time_hour,in

13、fi.time_min,infi.seat+m,infi.sell-m);baocun();void manzuo()沈阳航空航天大学设计用纸23int i;double m;for(i=0;ip;i+)m=infi.sell*1.0/(infi.seat+infi.sell)*1.0;printf(“电影%s 的满座率为%f:“,infi.name,m);void main ()int choice;stime();menu();read();system(“color f5“);while(1)printf(“n 输入你要选择的选项: “);scanf(“%d“,沈阳航空航天大学设计用纸24switch (choice)case 1: buy_ticket();break;case 2: quit_ticket();break; case 3:manzuo();break;case 4:exit(0);break;

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

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报