




如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
WORD /NUMPAGES9 电影票务系统 111190142杰 一、程序框架图 电影院票务系统 管理员管理影讯系统 按时间排列信息 订票信息 取票信息 退票信息 查询信息 浏览电影信息 退出 创建电影信息 修改电影信息 增加电影信息 删除电影信息 退出子菜单 按电影名称查询信息 按放映时长查询信息 按电影院查询信息 (注:管理员密码为123.) 二、概要设计 主要结构体 structMovie //电影信息 { intnumber; //编号,各票的编号是唯一的,方便用户输入编号就能选择想要的票进行操作 intisNotNull; //是否不为空,==1时表示有电影可看 charMID[50]; //电影序列号 charMName[50];//电影名称 charcompany[50]; //电影院 structtmt1; //播放日期、时间 structtmt2; //结束日期、时间 time_tsecond; //把播放日期、时间转换为秒。这样票的排序就很简单了。 intprice; //价格 intseatnumber[20][20];//保存座位信息,数字1代表已被预定,数字0代表未被预定 intcount; //票数 charlate[50]; //是否正常播放 };typedefstructmoviemovie structCustomer //顾客 { charcID[50]; // inttickets; //订的票数 Movief; //保存已定的票的信息 };typedefstructCustomerCustomer;: Movieff; //空的票。用来格式化被删除的或过期的或还掉的票 Customercc; //空人。用来格式化票数为零的客户 Movief[100]; //保存所有的票 Customerc[100];//保存所有的客户 charpassword[100]="123"; //密码 charcomand[20],comandx[20];//用户输入的命令字符串,防止输入0.1之类的 intcommand,commandx; //由charcomand[20]转化成的命令 intMNumber; //电影票总数,程序刚开始时要从文件读取资料的循环次数 intcNumber; //顾客数,程序刚开始时要从文件读取资料的循环次数 intrank=1; //电影的编号,唯一的,用于区分不同的票 voidReady(); //程序输出主菜单前,从文件里读取所有数据,文件不存在的话就创建所有的文件 voidFinish(); //用户选择退出时,保存资料 voidMenu(); //输出主菜单,任您选择 voidControl();//管理员管理界面 voidAddMovie(); //添加电影 voidDeleteMovie(); //删除 voidAlterMovie(); //修改 voidSearchMovie(); //按电影序号、播放时间、结束时间、电影院查询机票 voidMyPrint(Movief); //自己定义的输出函数 voidMyPrintx(Movief); voidMyPrintxx(Movief); voidPrintAllMovie(); //输出所有的电影信息 voidPrintAllMoviex(); voidSortMovie(); //排序电影 2)主要函数流程图: (1)管理员修改电影信息:先判断密码,密码正确后再选择操作:创建、修改、增加、删除 具体见图1.。 开始 输入密码 是否正确 否 是 选择操作 创建,修改,删除 是否完成 否 是 写入文件 退出 结束 } 图1 (2)排序函数:电影信息按时间排序。见图2。 开始 按时间排序 是否正确 否 是 利用选择法排序 利用新定义的结构体将电影整体读入 是否完成 否 是 是 结束 图2 (3)订票函数,见图3。 开始 订票 输入XX号 是否正确 否 输入电影序号 是 是否存在 否 是 订票数c.tickets 是 结束 图3 (4)退票的流程类似订票函数:只需将c.lose减1或输出c.ticket即可(参见图3) (5)查询函数:可根据电影名称、时长、电影院查询。 见图4. 开始 查询电影 选择操作 电影时长 电影院 按电影名称查询 是否正确 否 输出信息 是 是否退出 否 退出 是 结束 图4 二、测试数据与其结果分析 显示的主菜单界面:★---您好,欢迎使用电影院订票系

17****21
实名认证
内容提供者


最近下载