《电影院售票系统.doc》由会员分享,可在线阅读,更多相关《电影院售票系统.doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精品文档,仅供学习与交流,如有侵权请联系网站删除内蒙古科技大学本科生课程设计说明书题 目:C+课程设计 电影院售票管理系统学生姓名:学 号:专 业:班 级:指导教师:日 期:【精品文档】第 11 页总体设计主函数录入信息添加信息查询信息浏览信息售票与退票结束接口设计 函数列表函数名函数格式 函数功能LuruVoid录入信息Chaxunnamevoid按姓名查询信息Chaxuntimevoid按时间查询信息Liulanvoid浏览信息Shoupiaovoid售票Tuipiaoint退票Showvoid显示信息Tianjiavoid添加信息详细设计录入信息:按提示输入信息,保存在类中定义的数组a1
2、00中。进入输入信息显示信息结束查询信息:通过调用类中chaxun()函数,选择以何种方式查询,通过输入查询电影的名或时间,查找到所查找的电影,最终输出。进入输入选项t=1t=2输入时间输入姓名输出结果结束t=2浏览信息:通过使用for语句,将存储的所有电影信息打印出来。添加信息:按提示输入信息,储存在数组中,最终电影的个数len加1。进入输入电影信息显示添加电影信息结束售票与退票:先选择需要进行的操作,选择完成时,按要求输入电影信息,如果没有查找到,就输出无信息,查找到函数内的n变量加1,并输出查到信息。查找到信息之后将查到的电影播放时间与系统时间比较,如果小于系统时间,则已经播放完,无法进
3、行售票或退票。如果没有播放,则判定是否是会员,如果是会员,则计算输出会员价格,若不是会员,则输出原价。售票输入电影场次和时间是否超时输出超时是否会员输出会员价结束输出原价退票输入电影场次和时间是否超时输出超时是否会员输出会员价结束输出原价课程设计总结:这次课程设计难点是电影播放时间与系统时间的比较,这个问题我通过查阅资料认识到了头文字windows.h中的获取系统时间SYSTEMTIME sys和GetLocalTime(&sys),最终解决了问题。附录:#include#include#include #include using namespace std;struct baseint t
4、ime_f;int time_s;int time_t;int time_y;int time_n;int datetime5;char name20;int changci;float price;float zhekou;int zwnumber; class filmpublic:film()film()void luru();void ksluru();int zhengjia();void liulan();void chaxun();void shoupiao();void tuipiao();void chaxunname();void chaxuntime();friend v
5、oid show(int i);private:base a100;int len;fi;void show(int i)coutfi.ai.time_n-fi.ai.time_y-fi.ai.time_ttfi.ai.time_s:fi.ai.time_ftfi.ai.changcitfi.ai.namettfi.ai.pricetfi.ai.zhekoutfi.ai.zwnumberendl;void film:luru()int m;cout请输入操作:endl;cout1 无数据状态录入信息endl;cout2 有数据状态添加信息m;switch(m)case 1:system(Cls
6、);fi.ksluru();break;case 2:system(Cls);len=fi.zhengjia();break;void film:ksluru()char ch;for(int i=0;i100;i+)cout输入日期:fi.ai.time_nfi.ai.time_yfi.ai.time_t;cout输入时间:fi.ai.time_sfi.ai.time_f;fi.ai.datetime0=fi.ai.time_n;fi.ai.datetime1=fi.ai.time_y;fi.ai.datetime2=fi.ai.time_t;fi.ai.datetime3=fi.ai.ti
7、me_s;fi.ai.datetime4=fi.ai.time_f;cout场次:fi.ai.changci;cout电影名称:fi.ai.name;cout票价:fi.ai.price;cout会员折扣:fi.ai.zhekou;cout剩余座位:fi.ai.zwnumber;len+;cout是否继续添加?ch;while(1)if(ch=n|ch=N|ch=y|ch=Y)break;elsecout请重新输入!endl;if(ch=N|ch=n)break;int film:zhengjia()char ch;for(int i=fi.len;i100-fi.len;i+)cout输入日
8、期:fi.ai.time_nfi.ai.time_yfi.ai.time_t;cout输入时间:fi.ai.time_sfi.ai.time_f;cout场次:fi.ai.changci;cout电影名称:fi.ai.name;cout票价:fi.ai.price;cout会员折扣:fi.ai.zhekou;cout剩余座位:fi.ai.zwnumber;len+;cout是否继续添加?ch;while(1)if(ch=n|ch=N|ch=y|ch=Y)break;elsecout请重新输入!endl;if(ch=N|ch=n)break;return len;void film:liulan
9、()int ch;coutnnntttt显示模块nnnendl;cout所有电影信息如下:endl; cout日 期t时 间t场次t电影名称t票价t折扣t余票tendlendl; for(int i=0;ilen;i+)coutfi.ai.time_n-fi.ai.time_y-fi.ai.time_ttfi.ai.time_s:fi.ai.time_ftfi.ai.changcitfi.ai.namettfi.ai.pricetfi.ai.zhekoutfi.ai.zwnumberendl;cout按任意键退出 ch; int timecmp(int a,int b,int n) int i
10、,t; for(i=0;in;i+) if(ai=bi) t+;if(n=t)return 0;elsereturn 1; void film:chaxunname()int n=0;char na20;cout请输入查找影片:na;cout日 期t时 间t场次t电影名称t票价t折扣t余票tendlendl; for(int i=0;ilen;i+)if(strcmp(na,ai.name)=0)show(i);n+;if(n=0)cout没有结果!endl;elsecout查到结果!endl;void film:chaxuntime() int temp1,temp2,temp3,temp4
11、,temp5,n=0; char ch;while(1)cout请输入查询时间:endl;couttemp1temp2temp3;couttemp4temp5;cout日 期t时 间t场次t电影名称t票价t折扣t余票tendlendl; for(int i=0;ilen;i+)if(ai.time_n=temp1)&ai.time_y=temp2&ai.time_t=temp3&temp4=ai.time_s&ai.time_f=temp5) show(i);n+;if(n=0)cout没有结果!;elsecout查到结果!endl;cout是否继续查找?ch;while(1)if(ch=n|
12、ch=N|ch=y|ch=Y)break;elsecout请重新输入!endl;if(ch=N|ch=n)break; void film:chaxun() int m; char ch; cout请输入查询方式:endl;cout1 按时间endl;cout2 按电影名m;switch(m)case 1:system(Cls);fi.chaxuntime();break;case 2:system(Cls);fi.chaxunname();break;cout按任意键退出!ch; void film:shoupiao() SYSTEMTIME sys; GetLocalTime(&sys);
13、 int n=0,c;char na20,x,ch;cout请输入购买影片:na;cout输入购买场次:c; cout日 期t时 间t场次t电影名称t票价t折扣t余票tendlendl; for(int i=0;i0)if(ai.time_nsys.wYear)cout电影已播放endl;elsen+;show(i);ai.zwnumber-; cout是否为会员?x; if(x=y|x=Y)cout您需要支付ai.price*ai.zhekou*0.1元endl;elsecout您需要支付ai.price元endl;if(n=0)cout没有结果!endl; cout按任意键退出!ch; v
14、oid film:tuipiao()SYSTEMTIME sys;GetLocalTime(&sys);int n=0,c;char na20,x,ch;cout请输入退票影片:na;cout请输入退票场次:c;cout日 期t时 间t场次t电影名称t票价t折扣t余票tendlendl; for(int i=0;ifi.len;i+)if(strcmp(na,ai.name)=0&ai.changci=c)if(ai.time_nsys.wYear)cout已播放完!endl; elseshow(i);ai.zwnumber-; cout是否为会员?x; if(x=y|x=Y)cout退回您a
15、i.price*ai.zhekou*0.1元endl;elsecout退回您ai.price元endl;n+;if(n=0)cout没有结果!endl; cout按任意键退出!ch; int main()int x,m,i=1;while(i)system(Cls);coutnnntttt主界面nnnendl;couttttendl;cout ttt请输入需要的操作:endl;cout ttt1 录入放映信息endl;cout ttt2 浏览放映信息endl;cout ttt3 查询电影endl;cout ttt4 售票和退票endl;cout ttt5 退出endl;couttttm;switch(m)case 1:system(Cls);fi.luru();break;case 2:system(Cls);fi.liulan();break;case 3:system(Cls);fi.chaxun();break;case 4:system(Cls);cout请输入操作:endl;cout1 购票endl;cout2 退票x;switch(x)case 1:fi.shoupiao();break;case 2:fi.tuipiao();break; break;case 5:i=0;break;return 0;