您好,欢迎来到年旅网。
搜索
您的当前位置:首页影院订票系统实验报告

影院订票系统实验报告

来源:年旅网
综 合 实 验 报 告

课程名称 面向对象综合实验 实验名称_____影院订票系统的设计与实现 实验类型 综合性 实验地点 304机房 实验日期

指导教师 徐华

专 业__软件工程_____ 班 级__软件1601____

学 号__02___ 姓 名___寇春雷______ 成 绩 ______________

辽宁石油化工大学计算机与通信工程学院

目录

一、综合实验的目的 ........................................... 错误!未定义书签。 二、综合实验的内容和要求 ..................................... 错误!未定义书签。 三、实验原理 ................................................. 错误!未定义书签。 三、实验截图 ................................................. 错误!未定义书签。 四、实验分析 ................................................. 错误!未定义书签。 五、实验总结 ................................................. 错误!未定义书签。 六、实验源码 ................................................. 错误!未定义书签。 七、参考文献 ................................................. 错误!未定义书签。

一、综合实验的目的

巩固和加深C++课程的基本知识的理解和掌握,提高综合运用c++知识解决实际问题的能力。

二、综合实验的内容和要求

实现下列功能要求的程序, 并写出实验报告, 报告内容包括:题目、目的、内容和要求、 原理与技术、程序清单、运行情况 ( 输入、输出 )、总结。 . 定义用户信息类User_class:

( 数据成员: 用户名char *name(初始化为个人,即管理员),用户密码 char *posword,联系电话char* tel, 联系地址char *addr

成员函数: 用户注册, 用户登录(验证登录信息是否与为个人, 是,即为管理员, 否则为是一般用户 )

. 定义时间类Time_class:

( 数据成员: int year,month,day) ( 成员函数, 自己自己根据需要确定 ) . 定义影片信息类Film_class:

( 数据成员: 片名 char *moviename,主要演员char *mactor, 上映时间Time_class time,票价double price, 剩余票数 int ticknum) 成员函数, 自己根据需要设置 ) . 定义影票订单类 Torder_class:

( 用户名 *char username, 影片名 *char moviename, 放映时间Time_class ptime,

座号char *seat( 如 “3排4号”), 订票时间Time_class dtime 票价double price )

. 实现用户 和 系统管理员的注册功能, 界面可如下: 输入用户名: 输入密码:

联系电话: 联系地址:

( 保存以上信息, 到用户信息表 )

. 实现用户 或 系统管理员 登录功能, 界面可如下: 输入用户名: 输入密码:

( 验证 用户输入信息是否正确, 正确, 登陆成功 ) . 若是管理员登录, 显示如下菜单, 并实现如下功能:

1. 输入影片信息 2. 显示影片信息 3. 增加影片信息 4. 查找影片 5. 删除影片 6. 显示用户信息 7. 显示用户订单 8. 查找某用户订单 9. 删除某用户订单 . 若是用户登录, 显示如下菜单, 并实现相应的功能:

1. 显示影片信息 2. 查找影片信息 3. 订票 4. 查看订单

三、实验原理

本实验使用vs2012开发环境,使用C++窗口程序设计。

先定义Time_class时间类,User_class用户信息类,Film_class影片信息类, Torder_class订单

类,其中影片信息类,订单类,调用时间类,实现放映时间以及订单时间的使用,这4个实体类 都有相应的get(),set()函数。

Manage控制类,执行逻辑

Boundary边界类,与用户实现信息的输入与输出,边界类调用控制类对象,控制类对象调用控主程序有两个功能,一个是注册,一个是登录。两个功能进入边界类。

制类中的函数,实现相应的功能。

三、实验截图

用户注册页面

用户登录界面

用户功能菜单

查看影片信息

用户订票

管理员功能菜单

查看订单列表

订票信息

修改影片信息

用户信息,影片信息,订单信息储存在当前文件下

四、实验分析

类Time_class 成员数据定义 int year; int month; int day;成员数据作用描述 年份 月份 日期 成员函数功能描述 无参构造函数 成员函数定义 Time_class(void); ~Time_class(void); Time_class(int year,int month,int day);int getyear(); int getmonth();int getday(); void setyear(int year); void setmonth(int month); void setday(int day); 析构函数 含参构造函数 取年份 取月份 取日期 设置年份 设置月份 设置日期 类User_class 成员数据定义 char name[30]; char posword[20]; char tel[20];成员数据作用描述 用户或管理员姓名 用户密码 用户电话 用户住址 char addr[50]; 成员函数定义 User_class(void); ~User_class(void); User_class(char *name,char *posword); User_class(char *name,char *posword,char *tel,char *addr); char *getname(); char *getposword(); char *gettel(); char *getaddr(); void setname(char *name); void setposword(char *posword); void settel(char *tel); void setaddr(char *addr); 成员函数功能描述 无参构造函数 析构函数 含参构造函数 含参构造函数 取用户姓名 取用户密码 取用户电话号码 取用户地址 设置用户姓名 设置用户密码 设置用户电话号码 设置用户地址 类Film_class 成员数据定义 char moviename[30]; char mactor[30]; Time_class time; double price; int ticknum; int position[121]; 成员数据作用描述 片名 主要演员 上映时间 票价 剩余票数 座位信息,position[0]不用 成员函数功能描述 无参构造函数 析构函数 含参构造函数 成员函数定义 Film_class(void); ~Film_class(void); Film_class(char *moviename,char *mactor,Time_class time,double price,int ticknum,int position[]); char* getmoviename(); char* getmactor(); Time_class gettime(); double getprice(); int getticknum(); void setmoviename(char *moviename); void setmactor(char *mactor); void settime(Time_class time); void setprice(double price); void setticknum(int ticknum); void setposition_point(int number); 取片名 取主要演员 取上映时间 取票价 取剩余票数 设置片名 设置主要演员 设置上映时间 设置票价 设置剩余票数 标记用户订单信息 int* getposition(); 取影片座位信息 类Torder_class 成员数据定义 char username[20]; char moviename[30]; Time_class ptime; char seat[20]; Time_class dtime; double price; 成员数据作用描述 用户名 影片名 放映时间 座号(如3排4号) 订票时间 票价 成员函数功能描述 无参构造函数 析构函数 含参构造函数 成员函数定义 Torder_class(void); ~Torder_class(void); Torder_class(char *username,char *moviename,Time_class ptime,char *seat,Time_class dtime,double price); char *getusername(); char *getmoviename(); Time_class getptime(); char* getseat(); Time_class getdtime(); double getprice(); void setusername(char *username); void setmoviename(char *moviename); void setptime(Time_class ptime); void setseat(char seat[20]); void setdtime(Time_class dtime); void setprice(double price); 取用户名 取影片名 取放映时间 取座号(如3排4号) 取订票时间 取票价 设置用户名 设置影片名 设置放映时间 设置座号(如3排4号) 设置订票时间 设置票价 类Manage 成员数据定义 vector users; 成员数据作用描述

}

}

etyear()==() &&(pos->gettime()).getmonth()==() && (pos->gettime()).getday()==()) return &(*pos); return NULL; 户注册 ☆ ★\"<cout<<\"\★ ☆ 2.管理员注册 ☆ ★\"<>c; switch(c) { }

case 1:enroll_user(); break; case 2:enroll_administrator();break; default: break;

void Boundary::enroll_user() {

char name[30];户登录 ☆ ★\"<cout<<\"\★ ☆ 2.管理员登录 ☆ ★\"<>c;

}

switch(c) { }

case 1:login_user(); break; case 2:login_administrator();break; default: break;

void Boundary::login_user() { }

void Boundary::admin_function_menu(User_class* a) {

int c; do{

system(\"cls\");入影片信息 ☆ ★\"<cout<<\"\★ ☆ 2.显示影片信息 ☆ ★\"<>c;

char name[30];示影片信息 ☆ ★\"<cout<<\"\★ ☆ 2.查找影片信息 ☆ ★\"<>c; switch(c) { }

case 1:display_film_info();break; case 2:search_film_info();break; case 3:user_booking_film();break; case 4:display_torder_info_user();break; default:break;

}while(c!=5);

}

switch(c) { }

case 1:add_film_info();break; case 2:display_film_info();break; case 3:change_film_info();break; case 4:search_film_info();break; case 5:del_film_info();break; case 6:display_user_info();break; case 7:display_torder_info();break; case 8:search_torder_info();break; case 9:del_torder_info();break; default: break;

}while(c!=10);

void Boundary::add_film_info() {

char moviename[30];etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月 }

cout<<\"\ 票价:\"<getprice()<getticknum()<>number;

if(film->getticknum()-number>0)etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月

film->setticknum(film->getticknum()-number);

film->setposition_point(number);etyear()<<\"年\"<<(pos->gettime()).getmonth()<<\"月

\"<<(film->gettime()).getday()<<\"日\"<\"<<(film->gettime()).getday()<<\"日\"<\"<<(pos->gettime()).getday()<<\"日\"<cout<<\"\ 票价:\"<getprice()<getticknum()<system(\"pause\");etyear()<<\"年\"<<(pos->getptime()).getmonth()<<\"月 }

cout<<\"\ 座号:\"<getseat()<cout<<\"\ 订票时间:\"<<(pos->getdtime()).getyear()<<\"年\"<<(pos->getdtime()).getmonth()<<\"cout<<\"\ 票价:\"<getprice()<\"<<(pos->getptime()).getday()<<\"日\"<月\"<<(pos->getdtime()).getday()<<\"日\"<system(\"pause\");etyear()<<\"年\"<<(torder->getptime()).getmonth()<<\"月

cout<<\"\ 座号:\"<getseat()<\"<<(torder->getptime()).getday()<<\"日\"<}

}

cout<<\"\ 订票时间:\"<<(torder->getdtime()).getyear()<<\"年cout<<\"\ 票价:\"<getprice()<\"<<(torder->getdtime()).getmonth()<<\"月\"<<(torder->getdtime()).getday()<<\"日\"<system(\"pause\");据片名搜索影片信息 ☆ ★\"<cout<<\"\★ ☆ 2.根据演员名称搜索 ☆ ★\"<>c; switch(c) { }

case 1:search_film_info_moviename();break; case 2:search_film_info_mactor();break; case 3:search_film_info_time();break; case 4:search_film_info_price();break; default:break;

}while(c!=5);

void Boundary::search_film_info_price()etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月\"<<(film->gettime()).getday()<<\"日\"<}

system(\"pause\");etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月 }

system(\"pause\");etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月 }

system(\"pause\");etyear()<<\"年\"<<(film->gettime()).getmonth()<<\"月

cout<<\"\ 票价:\"<getprice()<getprice()<getticknum()<getprice()<getticknum()<getprice()<getticknum()<\"<<(film->gettime()).getday()<<\"日\"<\"<<(film->gettime()).getday()<<\"日\"<\"<<(film->gettime()).getday()<<\"日\"<}

}

cout<<\"\ 剩余票数:\"<getticknum()<system(\"pause\");etyear()<<\"年\"<<(torder->getptime()).getmonth()<<\"月 }

system(\"pause\");改影片名称 ☆ ★\"<cout<<\"\★ ☆ 2.修改主要演员 ☆ ★\"<>c; switch(c) { }

case 1:change_film_info_moviename();break; case 2:change_film_info_mactor();break; case 3:change_film_info_time();break; case 4:change_film_info_price();break; default:break;

cout<<\"\ 座号:\"<getseat()<cout<<\"\ 订票时间:\"<<(torder->getdtime()).getyear()<<\"年cout<<\"\ 票价:\"<getprice()<\"<<(torder->getptime()).getday()<<\"日\"<\"<<(torder->getdtime()).getmonth()<<\"月\"<<(torder->getdtime()).getday()<<\"日\"<}while(c!=5);

void Boundary::change_film_info_moviename()册 ☆ ★\"<cout<<\"\★ ☆ 2.登录 ☆ ★\"<>c; switch(c) { }

cout<case 1:(); break; case 2:();break; default: break;

}

}while(c!=3); return 0;

李文超.赵新慧.《面向对象程序设计教程》.中国石油出版社。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- oldu.cn 版权所有 浙ICP备2024123271号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务