1、 面向对象程序课程设计面向对象程序课程设计 (2012/2013 学年第一学期第学年第一学期第 20 周)周) 指导教师:指导教师: 班级:计算机科学与技术(班级:计算机科学与技术(1)班)班 学号:学号: 姓名:姓名:* 1 面向对象程序课程设计任务书面向对象程序课程设计任务书 【题目】【题目】电影院自动售票机 【目的】【目的】 通过设计一个小型电影院的自动售票系统,训练综合运用所学知识处理实际问题的能力, 强化面向对象的程序设计理念,使自己的程序设计与调试水平有一个明显的提高。 【要求】【要求】 1、每个学生必须独立完成; 2、课程设计时间为 1 周; 3、设计语言采用 C+; 4、学生有
2、事离校必须请假。课程设计期间,无故缺席按旷课处理;缺席时间达四分之一 以上者,未按规定上交实验报告的学生,其成绩按不及格处理。 【内容简介】【内容简介】 有一个小型的电影院,这个电影院只有一个放映厅,厅里有 10 排座位,每排 10 个座位。 这个电影院从早上 8:00 开始营业,每 2 小时放映一部电影,营业至次日凌晨 2 点结束。这 个电影院现在打算使用自动售票机,来让观众自己购票。现在请你为这个自动售票机编写 一个程序,使得这个自动售票机能够正确工作。 【考【考核标准】核标准】 1、能够正确出售某一场次,某一座位的票,成绩60; 2、能够统计每一场次的出票情况,成绩70; 3、能够统计每
3、一天每一场次的出票情况,成绩80; 4、能够考虑不同场次的票价,不同座位的票价,界面设计友好,成绩90。 请仔细考虑这个题目中出现的各个实体,考虑如何保存数据。 【工作内容及工作计划】【工作内容及工作计划】 2 面向对象程序课程设计面向对象程序课程设计 目目 录录 一、 题目 二、 需求分析 三、 系统结构图 四、 类的设计 五、 程序代码与说明 六、 运行结果与分析 七、 心得与体会 3 一、题目 【题目】 电影院自动售票机 【目的】 通过设计一个小型电影院的自动售票系统,训练综合运用所学知识处理实际问题的能力, 强化面向对象的程序设计理念,使自己的程序设计与调试水平有一个明显的提高。 【要
4、求】 1、每个学生必须独立完成; 2、课程设计时间为 1 周; 3、设计语言采用 C+; 4、学生有事离校必须请假。课程设计期间,无故缺席按旷课处理;缺席时间达四分之一 以上者,未按规定上交实验报告的学生,其成绩按不及格处理。 【内容简介】 有一个小型的电影院,这个电影院只有一个放映厅,厅里有 10 排座位,每排 10 个座位。 这个电影院从早上 8:00 开始营业,每 2 小时放映一部电影,营业至次日凌晨 2 点结束。这 个电影院现在打算使用自动售票机,来让观众自己购票。现在请你为这个自动售票机编写 一个程序,使得这个自动售票机能够正确工作。 4 二、需求分析 电影院自动售票机用户使用时,必
5、须先登录或者注册,不同的用户登录后进入不同功能界面,管理 员账户系统默认“CFY” ,密码: “1101” ,顾客账户,由顾客自己注册,然后每个顾客会有一个以账户 名为文件名的 txt 文本,文本中第一行存账户密码,接下来,存的是用户的订票信息。管理员账户则不 用建立相应的文本,只有有一个 MovieInfo.txt 用来存储影片信息即可。 电影院自动售票机主要功能可分为两个板块:1、管理员板块 2、售票板块。 管理员板块拥有最高权限,可对电影的信息进行修改,比如:录入(input) 、显示(show) 、查找 (search) 、修改(change)、删除(del) ;而售票系统则只进行售票
6、(book)和退票(refund) 。 顾客板块拥有最小权限,只能对影片的预定(book)和退订(refund)两项功能。 三、系统结构图 系统的结构图如下: 欢迎界面 登 录 此账户为管理 员还是顾客? 管理 manager 录 入 显 示 查 询 修 改 删 除 注 册 售票 customer 订 票 退 票 5 管理员账户无法注册,系统默认账户名:CFY,密码:1101。 顾客无论是注册还是登录成功,都会自动转入售票模块,然后由用户进行相应的选择。 管理员登录成功后,系统会自动进入管理板块,在进入管理板块时,先通过 read()把 MovieInfo.txt 中的数据读入管理员类中自定义的 vector 中,然后管理员可实现对影片的诸多操作, 录入功能:根据影讯录入新的电影信息。 显示功能:将电影的播放时间与系统时间比较,以判断电影是否已经播放或正在播放。 查找功能:有按电影名称查询和按播放时间查询两种查询方式。 修改功能:可对影片的每个属性进行修改。 删除功能:通入输入要删除的影片名,通过 vector 自身的删除函数 erase