欢迎来到天天文库
浏览记录
ID:10495730
大小:231.00 KB
页数:20页
时间:2018-07-07
《车票管理系统设计报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、车票管理系统设计报告一、班级、姓名、学号和完成日期班级:Z090551姓名:杨新路学号:Z09055119日期:2010年6月25日二、实训题目【问题描述】一车站每天有n个发车班次,每个班次都有一班次号(1、2、3…n),固定的发车时间,固定的路线(起始站、终点站),大致的行车时间,固定的额定载客量。如班次发车时间起点站终点站行车时间额定载量已定票人数18:00郫县广汉2453026:30郫县成都0.54040…【基本要求】1.录入班次信息,可不定时地增加班次数据。2.浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。3.查询路
2、线:可按班次号查询,可按终点站查询。4.售票和退票功能。A:当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数。B:退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数。5.至少采用文本菜单界面(如果能采用图形菜单界面更好)。【测试数据】输入:应用程序运行后,在屏幕上显示一个菜单(菜单显示外观见前面的图示)。用户可以根据需求,选定相应的操作项目。进入每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。主界面录入测试数据具体测试数据如下表:班次发车时间起点站终点站行车时间额定载量已定票人数18:00郫县广汉2453026:30郫县成都0
3、.5404037:00郫县成都0.54020410:00郫县成都0.5402输出:应用程序运行后,要在屏幕上显示一个主菜单(见上面主菜单图),将以上的测试数据输入。要求用户输入数据时,要给出清晰、明确的提示信息,包括输入的数据内容、格式及结束方式等。具体程序测试结果见后面的调试程序栏;【数据结构】本程序用到2个结构体,方便信息的录入,浏览,查询,订票与退票,等功能的实现,structtime{inthour;intminutes;};structticket{intcarnumber;structtimesetout;charbeginpoint[20];charendpoint[20];f
4、loatlasttime;intfixnumber;intfixednumber;}car[4];【算法思想】利用结构体数组存放所有车辆的信息,车辆的信息由操作人员录入,录入完成后,通过菜单的提示进行相应的操作,不同的模块采用不同的算法进行管理:主要采用的头文件:stdio.h、stdlib.h、time.h、string.h。1.录入信息录入车辆信息时,调用了InputMessage()函数通过循环依次输入车辆的信息1.浏览信息:通过ShowMessage()函数可以显示各班次的详细信息2.查询信息:通过SearchMessage()函数可以按两种方式查询车辆信息,它是同过调用两个函数se
5、archbynumber();searchbyaddress()实现的3.订票与退票:在一个函数TicketManagemet()同过调用两个函数TicketOrder(),与TicketDelet();来实现的。【总体设计】1.模块划分主函数主菜单1录入班次信息2浏览班次信息3查询行车路线4订票与退票5退出系统2退票管理1售票管理1按班次号查询2按终点站查询整个算法分为五个模块:(1).录入班次信息的函数InputMessage();此模块用于录入各班次的具体信息。(2).浏览班次信息的函数ShowMessage()。(3).查询行车路线的函数SearchMessage();它的函数体中包
6、含两个不同的函数searchbynumber(),searchbyaddress()通过switch()来调用以实现不同方式的查询功能(4).售票与退票功能的函数:此功能是通过TicketMagement()来实现其中又包括两个子函数ticketorder(),ticketdelect()来分别实现退票和售票的功能;(5).退出系统的函数。2.流程图主菜单函数流程图调用函数InputMessage()调用函数InputMessage()调用函数InputMessage()调用函数InputMessage()调用函数InputMessage()调用函数InputMessage()‘1’‘2’‘
7、3’‘4’‘5’其他functioNnumberSwitch语句结束订票函数流程图售票与退票菜单选择1售票TicketOrder()请输入要定购的车票班次is=i-1s<0
8、
9、s>3对不起没有这趟车请查询后再订Ynowàtm
此文档下载收益归作者所有