车次信息管理系统
车票管理系统程序设计报告

车票管理系统程序设计报告一、引言车票管理系统是一个用于管理车票信息的软件系统。
该系统旨在提供方便快捷的购票、查询、退票等功能,以满足用户的出行需求。
本报告将详细介绍车票管理系统的设计思路、功能模块、数据结构以及程序实现等内容。
二、需求分析1. 功能需求车票管理系统需要具备以下功能:- 用户注册与登录:用户可以通过注册账号并登录系统,以便进行购票、查询等操作。
- 车票购买:用户可以根据出发地、目的地、日期等条件查询车票,并进行购买。
- 车票查询:用户可以根据出发地、目的地、日期等条件查询车票的余票情况。
- 车票退票:用户可以在购票后一定时间内申请退票,并进行退款。
- 车票管理:管理员可以对车票信息进行管理,包括添加、修改、删除等操作。
2. 性能需求车票管理系统需要满足以下性能需求:- 响应速度:系统应能够在用户购票、查询等操作时快速响应,提供流畅的用户体验。
- 安全性:系统应具备一定的安全机制,保护用户的个人信息和交易数据不被泄露或篡改。
- 扩展性:系统应具备一定的扩展性,方便后续对功能进行升级和扩展。
三、系统设计1. 架构设计车票管理系统采用三层架构设计,包括表示层、业务逻辑层和数据访问层。
表示层负责与用户进行交互,接收用户的请求并展示相应的界面;业务逻辑层负责处理用户的请求,进行业务逻辑的处理;数据访问层负责与数据库进行交互,进行数据的读取和写入操作。
2. 功能模块设计车票管理系统包括以下功能模块:- 用户模块:负责用户的注册、登录、个人信息管理等操作。
- 车票模块:负责车票的购买、查询、退票等操作。
- 管理员模块:负责管理员对车票信息的管理操作。
3. 数据结构设计车票管理系统的数据结构包括以下表:- 用户表:保存用户的基本信息,包括用户名、密码、手机号等。
- 车票表:保存车票的详细信息,包括车次、出发地、目的地、日期、余票数量等。
- 订单表:保存用户购票的订单信息,包括用户ID、车票ID、购票时间等。
铁路运输管理信息系统(TMIS)概述

目录第三章铁路运输管理信息系统(TMIS)概述 (2)第一节TMIS建设目标与体系结构 (2)第二节TMIS子系统 (13)复习思考题 (27)(五) 体系结构P14上有图要修改。
第三章铁路运输管理信息系统(TMIS)概述[主要内容] TMIS总体目标与体系结构、TMIS的数据组织,TMIS的子系统:确报系统、货票信息综合应用系统、集装箱管理信息系统、车号自动识别信息报告系统、货运营销与生产管理系统、路局调度管理信息系统等内容。
[重点掌握]TMIS的建设目标、应用目标,TMIS的体系结构和数据组织,TMIS各子系统的主要功能等。
第一节TMIS建设目标与体系结构一、TMIS建设目标TMIS通过计算机网络从全路6000多个站名中选取的2000多个主要站段中,实时收集列车、机车、车辆、集装箱以及所运货物的动态信息,对列车、车辆、集装箱和货物进行节点式追踪管理,实现货票、确报、编组站、区段站、货运站、货运营销及调度系统的计算机管理,为全路各级运输管理人员提供及时、准确和完整的运输信息和辅助决策方案,实现紧密运输、均衡运输,提高运输生产效率,改善客户服务质量。
(一)TMIS的应用目标TMIS的应用目标是实现对运输市场信息和客户需求管理、运力资源信息管理、运输作业过程信息管理、管内现在车和集装箱动态分布信息管理和运输信息综合利用等。
1.运输市场信息和客户需求信息管理动态掌握货源分布动态和运输货物在途状态;动态掌握托运人的货运订单和请求车需求;向客户反馈货运订单的核准情况、请车计划的安排和执行情况;动态掌握企业自备车(箱)的位置及状态;动态掌握重点客户、重点企业(港口、电厂、玻璃厂、焦化厂等)重点物资的运输计划执行情况。
2.运力资源信息管理实现主要运力资源信息管理,包括:铁路货车、机车、集装箱保有量动态(含加入铁路运营的企业自备货车和集装箱);其他铁路运力资源信息,如丁务、电务维修管理等。
3.运输作业过程信息管理实现主要运输作业过程信息管理,包括:货物的承运、交付信息;装/卸车信息;列车的编、解、到、发信息;作业计划、作业单据的编制信息等。
列车车次查询系统设计与实现

摘要当前我国交通网上信息系统的发展处于一个较高的水平,广大乘客可以通过许多的方式获得交通信息,例如:通过使用火车、飞机时刻表,或者是到各个旅游网站、地图网站去查询。
在此背景下,本文首先考虑了我国交通的现状和不同乘客的实际要求,分析了此系统应该具有的功能;其次对系统的主要功能模块进行了详细地描述,其中主要包括各列车查询模块和列车信息管理更新模块,最后结合系统开发阶段和调试阶段发现的问题,提出了系统需要完善的地方,总结了开发此系统所取得的经验和体会。
列车时刻查询系统主要功能是:通过列车时刻查询系统,管理人员可以对车站设置、列车类型进行新建和修改,及列车的调整;对车次进行增加和维护;用户可以对列车的查询进行站站查询,及车次查询。
在查询当中可以查询到任意车次始发站和终点站两站之间的所有车次,并且可以查询出所要查询的两站之间距离公里数、经过的时间、行驶总时间、票价和车次类型等各种信息。
本系统使用mySQL来设计与开发的列车信息查询系统,具有良好的用户界面。
系统中实现了通过车次、路线、发站及到站信息来查询列车详细信息的功能。
关键词:mySQL数据库;查询系统ABSTRACTAt present, the development of China's transportation network information system at a high level, the majority of passengers can get traffic information through a number of ways,For example: through the use of the train, aircraft schedule, or to the various tourist sites, map sites to check.In this context.we firstly consider the practical requirements of traffic of our country current situation and different passengers, analyzed the function of this system should have; followed by the main function of the system modules are described in detail, including train each query module and train information management update module. Finally, according to the problems found in the system development and debugging phase,the system needs to perfect place, and summed up the experience that gained from the development of this system.Train schedule inquiry system main function is: through the train schedule inquiry system, managers can of the station, train type to create and modify, and train the adjustment; on the trips to the increase and maintenance; the user can query on the train station inquiries, trips inquiries. In the query can query to any trips originating station and the end of all trips between the two stations, stations, and can query to query between two stations distance kilometers, elapsed time, driving time,fares and type vehicles etc. all kinds of information.This system uses the MYSQL database data.Design and development of the train information query system, with a good user interface.The system realizes to query the detailed information through train, train route, station and station information function.Key words: mySQL; database; query system目录摘要 (I)目录 (IV)第1章概述 (1)第2章需求分析 (3)第3章概念结构设计 (4)第4章数据库表设计 (6)第5章系统主要模块详解 (7)第6章系统调试与测试 (11)第7章总结 (13)附录1 (14)附录2 (15)第1章概述1.1当今一个信息技术发展的时代,人们发生了日新月异的变化,特别是计算机的应用及普及到经济和社会生活的各个领域。
火车票管理系统

火车票管理系统火车票管理系统文档⒈引言本文档旨在介绍火车票管理系统的功能、设计和使用方法。
该系统是为了方便用户购买、查询和管理火车票而开发的,使用户能够更加便捷地进行出行安排。
⒉系统概述⑴系统功能火车票管理系统提供以下主要功能:- 用户注册与登录:用户可以注册新账号,并使用注册信息登录系统。
- 车次查询与预订:用户可以根据出发地、目的地和出发日期等条件查询火车车次,并进行车票预订。
- 车票购买与支付:用户可以选择预订的车票进行购买,并使用合适的支付方式完成支付。
- 车票退订与退款:用户在一定时间范围内可以取消已购的车票,并申请退款。
- 车票改签:用户在一定时间范围内可以申请对已购车票的改签。
- 个人信息管理:用户可以查看、修改个人信息,并查看自己的购票记录。
- 管理员功能:管理员可以管理系统的用户信息、车次信息和订单信息。
⑵用户角色本系统包含以下几种用户角色:- 普通用户:可以进行车次查询、预订和购票等操作。
- 管理员:可以管理系统的用户信息、车次信息和订单信息。
⒊系统设计⑴系统架构火车票管理系统的架构如下图所示:(插入系统架构图)⑵数据库设计系统的核心数据结构包括以下表:- 用户表:保存用户的注册信息和个人信息。
- 车次表:保存火车车次的相关信息,如车次号、起始站、终点站、票价等。
- 订单表:保存用户购买和预订的车票订单信息。
⑶页面设计系统的主要页面包括以下几个:- 登录页:用户输入账号和密码进行登录。
- 注册页:用户填写注册信息进行账号注册。
- 车次查询页:用户输入查询条件进行车次查询。
- 车次详情页:展示选择的车次的具体信息和预订功能。
- 购票页:用户选择座位类型和支付方式进行购票。
- 个人中心页:用户查看个人信息和购票记录,进行车票退订和改签等操作。
- 管理员页面:管理员管理用户信息、车次信息和订单信息。
⒋使用方法⑴用户注册与登录用户可以通过注册页进行账号注册,填写必要的信息后提交注册申请。
火车票管理系统

火车票管理系统火车票管理系统是一款基于网络技术和信息管理技术的管理系统,它可以对火车票的销售和管理进行全面的控制和监督。
目前,火车票管理系统已经被广泛地应用于火车票售卖、系统自动调度、车站售票、售票员管理、旅客管理等方面。
1. 系统概述火车票管理系统是一种基于现代网络技术和信息管理技术的高效、灵活、安全、完整的软件系统,它由火车票售卖、系统调度、售票员管理、旅客管理等模块组成。
该系统能够提供安全、准确、高效的售票服务,保证了火车票售卖的正常运作。
2. 功能介绍2.1 火车票售卖管理火车票售卖管理是该系统的核心模块。
在这个模块中,用户可以进行火车票查询、购票、退票、改签等功能。
用户可以输入出发地、目的地和乘车日期等信息查询车票。
如果有余票,乘客可以通过本系统在线购票。
如果乘客需要退票或更改,也可以在线操作,在规定的时间内取消或改签订单。
2.2 系统自动调度模块系统自动调度模块利用网络技术和信息管理技术自动安排日程安排和行程规划。
通过该模块,系统可以将不同地域、不同出发时间、不同的乘客等信息进行分析和计算,自动调度出合适的车次和座位,避免了人工计算所带来的时间和人为成本。
2.3 车站售票管理车站售票管理是该系统的重要组成部分。
在该模块中,车站售票员可以对售票、退票、改签、延误等问题进行处理,保证了每个乘客的行程顺利进行。
2.4 售票员管理售票员管理是该系统的另一个重要组成部分。
在该模块中,可以对售票员的信息进行管理,包括姓名、工号、部门、权限等。
通过该模块可以保证系统的稳定性、安全性、高效性等方面的优良表现。
2.5 旅客管理旅客管理是一个基于用户信息的管理模块。
用户通过本系统时必须进行身份认证,通过系统为其建立个人档案,包括姓名、身份证号码、联系方式等信息。
在旅行过程中,系统会根据乘客的行程记录其乘车信息、购票人数等信息,以便于车站售票员进行快捷查找,将其与票据信息进行核对,确保车站和车上护照的总透明。
火车票订票管理信息系统

目录1.系统背景 (1)2.信息系统分析 (1)2.1初步调查 (1)2.2可行性研究 (2)2.3现行系统的详细调查 (2)2.4新系统逻辑模型的提出 (3)2.4.1数据流图 (3)2.4.2数据字典 (4)3.信息系统设计 (7)3.1信息系统总体设计 (7)3.1.1信息系统总体布局设计 (7)3.1.2软件系统的总体结构设计 (7)3.2数据存储设计 (8)3.2.1数据库设计 (8)3.3系统结构 (9)4.系统实施 (10)4.1编程并编写文档 (10)4.2测试 (10)4.3系统转换 (12)1.系统背景中国拥有总里程超过五万公里的铁路线,是世界上最大的铁路运输网之一。
而铁路客运服务在其中又占有非常重要的地位。
其中有5000多个车站承办客运业务,日开列车2000多列。
为了在日益加剧的客户运输服务竞争中确保优势,改善铁路客户的服务质量,铁道部门一直在努力寻找提高竞争力、改善服务的新途径。
计算机应用于火车站售票的日常管理为火车站售票的现代化带来了从未有过的动力和机遇,为火车站票务管理领域的飞速发展提供了无限潜力。
能给火车站票务带来明显的经济效益和社会效益。
2.信息系统分析2.1初步调查中国铁路客票发售和预订系统的核心功能是建立一个覆盖全国铁路的计算机售票网络,实现客票管理和发售工作现代化,从而方便旅客购票和旅行,提高铁路客运经营水平和服务质量,系统可预订、预售和发售当日客票,具有售返程、联程等异地购票功能。
系统预售期为 9 天。
可以实现票额、座席、制票、计费、结算、统计等工作的计算机管理。
现行系统概述火车票票务管理的全部数据处理都由人工操作,工作量大,工作效率低,错误率高,信息反馈不及时,因此本信息系统拟对该火车票票务管理进行以下几方面的改革:◎系统功能重构◎业务流程重组◎数据流程重组为了解决上述问题,要根据目前火车票的管理模式和方法,利用Internet、局域网和计算机开发基于Web的火车票订票管理信息系统,可以实现票额、座席、制票、计费、结算、统计等工作的计算机管理。
票务管理系统使用说明(一)2024

票务管理系统使用说明(一)引言概述:票务管理系统是一种用于管理和处理各种票务事务的软件系统。
本文旨在通过详细的使用说明,向用户介绍如何使用票务管理系统来实现快速、高效和准确的票务管理。
正文:一、系统登录和用户管理1. 使用用户名和密码登录系统2. 用户权限管理,包括管理员、销售员、财务等角色的分配和权限设置3. 注册新用户和修改用户信息的操作方式4. 重置密码和解锁账户的方法5. 多层次的用户管理体系,确保安全和可追溯性二、票务销售管理1. 查看和编辑航班、车次、演出等活动的票务信息2. 创建和编辑新的票务活动,包括日期、时间、地点等信息的设定3. 票务分类和定价的设置,支持不同级别的票价和促销活动4. 添加和管理销售员,分配票务任务并跟踪销售情况5. 查看实时的销售统计数据和报表,方便管理和决策三、订单管理和支付处理1. 创建和编辑订单,包括选择活动、选择座位和票价等信息的填写2. 确认订单和生成订单号,方便后续查询和处理3. 支持在线支付和货到付款等支付方式,保证支付安全和便捷性4. 发送订单确认和电子票务给客户,提供订单状态查询功能5. 退票和改签的流程和操作方式,支持自动计算退款金额和手续费四、票务检票和入场管理1. 票务验真和防伪技术的应用,确保票务的真实可信性2. 扫描或手动输入电子票务信息,验证门票的有效性3. 检票结果的实时反馈和记录,方便统计和跟踪4. 入场安全措施的设定,例如闸机、人工检票等方式5. 售票和检票的数据同步和差错处理,保证数据的一致性和可靠性五、报表分析和系统维护1. 销售统计报表和财务报表的生成和导出2. 生成活动出票情况和入场情况的报表,方便管理和分析3. 数据备份和恢复的方法,确保数据的安全性和可靠性4. 系统升级和故障处理的流程,保证系统的稳定性和可用性5. 用户反馈和问题解答的渠道,提供优质的用户支持和服务总结:通过本文的说明,用户可以了解到票务管理系统的使用方法,包括系统登录和用户管理、票务销售管理、订单管理和支付处理、票务检票和入场管理,以及报表分析和系统维护等方面的内容。
LAIS列车运行状态信息系统

车载信息平台
车- 地 无线数据传输网络
路局 数据处理中心
机务段 数据处理中心
地- 地 有线数据传输网络
部/ 局/ 站段 3 级应用服务平台
机车信息采集 车载信息处理主机
无线通信模块
列车运行安全监控装置 机车动态检测诊断装置
机车运行安全 综合监测装置( TAX2)
GSM/ GPRS + Internet GSM-R
❖ 大屏幕电视墙 由大屏幕电视拼接单元、多屏图象处理器等设备组成。大屏幕电视墙作为部、局、站
段各级调度和业务管理的信息控制中心,可以全面集中反映辖区内在途运行机车的各种实 时信息和机车运行故报警、预警信息。
❖ 应用服务平台应用软件
返回
株洲南车时代电气股份有限公司
列车运行状态调度查询
LAIS列车运行状态信息系统 介绍
株洲南车时代电气股份有限公司 安全装备事业部ຫໍສະໝຸດ LAIS列车运行状态信息系统介绍
系统介绍 业务描述 主要结构及组成 系统介绍
株洲南车时代电气股份有限公司
系统概述 1 -系统介绍
网完成。
❖ 机车入段整备的车载设备全部记录文档集中转储 机车入段后,各种车载设备的全程记录数据文档通过2.4G无线
局域网集中转储到机务段数据应用服务器。
返回
株洲南车时代电气股份有限公司
铁路局数据处理中心
铁路局数据处理中心由外网通信服务器、网络安全平台、内网 通信服务器、数据应用服务器和数据库等设备组成。
口
其它安全 检测设备
返回
株洲南车时代电气股份有限公司
机车信息采集
主要完成与机车安全运行相关的各种状态信息的采集。需要采集的信息 源点如下表所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
沈阳工程学院课程设计设计题目:C++程序设计课程设计车次信息管理系统系别信息工程系班级学生姓名学号指导教师代钦张楠职称讲师讲师起止日期:2011 年12月12日起——至2011 年12月16日止课程设计成绩评定表系(部):信息工程系班级:学生姓名:系(部):信息工程系班级:学生姓名:沈阳工程学院课程设计任务书课程设计题目:车次信息管理系统系别信息工程系班级学生姓名学号指导教师代钦张楠职称讲师讲师课程设计进行地点:实训楼F611任务下达时间:2011年11月30日起止日期:2011年12月12日起——至2011年12月16日止教研室主任张欣年月日批准一、课程设计的原始资料及依据查阅有关资料,进一步理解面向对象程序设计的思想,并编写一个简单的windows系统。
通过本设计可以加深理解使用面向对象程序设计思想开发一个系统的方法,提高分析问题、解决问题和实际动手的能力。
二、课程设计主要内容及要求设计内容:(根据自己的任务填写内容)设计要求:(1)要求利用面向对象的方法完成系统的设计;(2)要求在设计的过程中建立清晰的类层次,并画出类图;(3)设计功能满足要求、易于操作的友好界面;(4)界面中需有菜单、工具栏、状态栏;(5)在系统的设计中,至少要用到面向对象的一种机制:继承、多态等;(6)在完成该题目时,小组人员进行详细的任务分工,并要在报告中体现出来。
三、对课程设计说明书撰写内容、格式、字数的要求1.课程设计说明书是体现和总结课程设计成果的载体,主要内容包括:设计题目、设计目的、设备器材、设计原理及内容、设计步骤、遇到的问题及解决方法、设计总结、参考文献等。
一般不应少于3000字。
2.在适当位置配合相应的实验原理图、功能模块图、算法流程图等图表进行说明。
应做到文理通顺,内容正确完整,书写工整,装订整齐。
3.设计总结部分主要写本人完成工作简介以及自己的设计体会,包括通过课程设计学到了什么,哪里遇到了困难,解决的办法以及今后的目标。
4.课程设计说明书手写或打印均可。
手写要用学校统一的课程设计用纸,用黑或蓝黑墨水工整书写;打印时采用A4纸,页边距均为20mm,正文采用宋体小四号字,行间距18磅。
文中大标题采用黑体小三号字,一级节标题采用黑体四号字,二级节标题采用黑体小四号字,表题与图题采用宋体五号字。
5.课程设计说明书装订顺序为:封面、任务书、成绩评定表、目录、正文、参考文献。
四、设计完成后应提交成果的种类、数量、质量等方面的要求1.完成“任务书”中指定的功能,运行结果正确。
2.课程设计说明书。
五、时间进度安排六、主要参考资料(文献)[1]郑莉董渊张瑞丰编着. 《C++语言程序设计》(第4版). 北京:清华大学出版社.2010[2] 陈维兴, 林小茶.《C++高级程序设计教程》. 北京:清华大学出版社[3] 谭浩强.《C++程序设计教程》. 北京:中国科学技术出版社[4] 王燕.《面向对象的理论与C++实践》. 北京:清华大学出版社[5] 马石安, 魏文平. 主编《Visual C++程序设计与应用教程》. 北京:清华大学出版社[6] 王育坚. 主编《Visual C++面向对象编程教程》(第二版). 北京:清华大学出版摘要本文的设计名称为车次信息管理系统,此程序既可以用于管理员管理车次信息也可以用于乘客查询有关的车次信息。
首先为了让程序开始界面一目了然,使得程序更容易操作,该设计制作了用户登陆界面,用户可以通过选择不同序号进行操作。
在该程序中主要定义三个类,分别是维护类、查询类和统计类,维护类作为基类主要实现的功能有增加车次信息、删除车次信息、修改车次信息,其中车次信息包括途经各站点的名称及时间,通过指针、链表的应用实现其功能。
查询类作为维护类的一个派生类,主要增加的功能是查询列车信息,查询时可实现按站名查询、按车次查询,并提供站-站查询,其中使用while循环结构、if语句及switch语句。
统计类是维护类的另一个派生类,实现的功能主要是统计车次信息,输入一个站名,可统计经过该站的列车数目,输入两个站名如A、B,则可统计同时经过A和B的所有列车数目,同时在系统设计中,用到了面向对象的两种机制:继承、多态。
关键词:类继承多态车次信息管理沈阳工程学院课程设计报告目录目录摘要 (I)第1章绪论 (1)第2章需求分析 (2)2.1 系统设计目的与意义 (2)2.2 系统数据流图 (2)2.3 系统功能介绍 (3)2.4 系统功能模块图 (3)第3章详细设计 (4)3.1类设计 (4)3.2程序代码描述 (5)3.3界面设计与各功能模块实现 (13)第4章系统测试 (20)4.1测试过程 (20)4.2测试结果说明 (22)结论 (23)致谢 (24)参考文献 (25)第1章绪论计算机已经成为我们学习和工作的得力助手。
今天,计算机的价格已经十分低廉,性能有了长足的进步,它已经被应用于许多领域。
另外,信息技术在管理方面也有了越来越深入而广泛的应用,信息管理系统的实施在技术上已逐步成熟。
信息管理系统是一个不断发展的新型学科,任何一个单位要生存要发展,要高效率地把内部活动有机地组织起来,就必须建立与自身特点相适应的信息管理系统。
尤其是在车站,要处理海量的车次数据相当麻烦,为了解决传统车次信息管理所面临着的这些问题,车次信息管理系统也就应运而生了。
本文阐述了车次信息管理工作与信息化紧密结合的管理系统的背景和意义,对该系统的总体结构和各功能模块进行了详细的论述。
系统包括了管理员模块和乘客模块,在管理员功能模块中对各种信息进行编辑,具体包括添加、修改、删除、查询、统计、显示等基本操作,在乘客功能模块中有查询、显示、统计等操作,这样就把车次信息管理简单化,以节省更多的人力和不必要的工作。
第2章需求分析2.1 系统设计目的与意义要求用C++面向程序设计语言编写车次信息管理系统,1.使学生进一步理解和掌握课堂上所学内容。
2.使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。
3.使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
4.提高学生的论文写作能力5.本次课程设计是计算机专业的主要实践性教学环节之一,要求运用所学专业的相关知识,结合实际操作与应用而进行的一次编程综合能力的训练,旨在培养学生在应用软件程序设计方面,初步掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及设计程序、调试程序、编写基本软件等能力,为毕业设计及今后从事专业相关的工作打下一定的基础。
2.2 系统数据流图2.3 系统功能介绍此程序名称为《车次信息管理系统》,顾名思义,这是一个可以管理列车基本信息的一个基本程序,它可以实现简单的列车信息查询和管理车次信息以及查看等功能,具体有以下功能:1.为了让程序开始界面一目了然,使得程序更容易操作,故再次设计了用户登陆界面。
2.主要功能还是车次信息的管理与维护,包括有:增加车次信息、删除车次信息、修改车次信息。
其中车次信息包括途经各站点的名称及时间。
3.当然作为一个信息的管理系统,另一项主要的功能就是车次的查询系统,本程序设计了查询时可实现按站名查询、按车次查询,并且提供站—站查询。
4.最后一项功能即为列车统计,即输入一个站名,可统计经过该站点的列车数目,如果输入两个站名,则可以统计同时经过这两个站点的所有列车数目。
2.4 系统功能模块图第3章详细设计3.1类设计1.基类:维护类⑴数据成员:NODE *p;NODE *q;⑵成员函数:void gongneng(NODE *n)/:添加车次信息;void gongneng()/:显示车次信息void del( NODE *k):删除车次信息;void gongneng(char n[20]):修改车次信息virtual void xianshi():显示车次信息2.派生类:查询类(class chaxunlei:public weihulei)void gongneng():查询车次信息3.派生类:统计类(class tongjilei:public weihulei)void gongneng():统计车次信息具体如下图所示:3.2程序代码描述#include <string.h>#include <malloc.h>#include <iostream.h>#include <windows.h>#include <conio.h>typedef struct node{char n[20];char m[20];char num[20];char time[20];struct node *next;}NODE;/**********维护类**********/ class weihulei{public:NODE *p;NODE *q;weihulei()//构造{p=NULL;}/**********添加成员*********/void gongneng(NODE *n)//添加{q= new NODE;q->next=p;n=p=q;cout<<"经过起点站名称:";cin>>p->n;cout<<"经过终点站名称:";cin>>p->m;cout<<"车次号码:";cin>>p->num;cout<<"发车时间:";cin>>p->time;}void gongneng()//显示{p=q;while (p!=NULL){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;p=p->next;}p=q;}/**********重载**********/void del( NODE *k)//删除{k=new NODE;k=p=q;char n[20];cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL&&(strcmp(p->num,n)!=0)!=0) {k=p;p=p->next;}if (p==NULL){cout<<"查无此车(-_-)!!"<<endl;}else{if (p==q)q=q->next;elsek->next=p->next;free(p);p=q;cout<<"删除成功!"<<endl;}}void del(){p=q=NULL;cout<<"所有信息已删除!" ;}/**********修改**********/void gongneng(char n[20])//编辑p=q;cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL&&(strcmp(p->num,n)!=0)!=0){p=p->next;}if (p==NULL){cout<<"查无此车!!"<<endl;}else{cout<<"经过起点站名称:";cin>>p->n;cout<<"经过终点站名称:";cin>>p->m;cout<<"车次号码:";cin>>p->num;cout<<"发车时间:";cin>>p->time;}cout<<"按任意键返回!!"<<endl;}/**********简单虚函数**********/virtual void xianshi(){cout<<"请输入密码:";int password;for(int i=0;i<3;i++){cin>>password;if(password==123456){cout<<"登陆成功(^_^)!"<<endl;getch();return ;}else cout<<"您输入的密码有误,请重新输入:";}cout<<"三次输入错误,拒绝登陆(-_-)!"<<endl;while(1){getch();}};/**********查询类**********/class chaxunlei:public weihulei{public:/**********构造**********/chaxunlei(weihulei c):weihulei()//构造{p=c.p;q=c.q;}/**********查询函数**********/void gongneng() //查询{p=q;char n[20];char m[20];char i;cout<<"请选择查询方式:1车次查询;2站名查询;3站-站查询\n";cin>>i;if (p==NULL){cout<<"没有列车信息(-_-)!!"<<endl;}switch(i){case'1':{cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL){if(strcmp(p->num,n)==0){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}case'2':{cout<<"请输入站名:"<<endl;cin>>n;while (p!=NULL){if((strcmp(p->n,n)==0)||(strcmp(p->m,n)==0)){ cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}case'3':{cout<<"请输入起点站名:"<<endl;cin>>n;cout<<"请输入终点站名:"<<endl;cin>>m;while (p!=NULL){if((strcmp(p->n,n)==0)&&(strcmp(p->m,m)==0)){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}default:return;}}/**********虚函数**********/void xianshi(){cout<<"************************************************************************ ********";cout<<"\n 1:查找车次!";cout<<"\n 2:显示车次信息!";cout<<"\n 3:列车统计";cout<<"\n 4:退出!"<<endl;cout<<"************************************************************************ ********"<<endl;cout<<"请输入菜单选项:"<<endl;}};/**********统计类**********/class tongjilei:public weihulei{public:tongjilei(weihulei c):weihulei()//构造{p=c.p;q=c.q;}void gongneng()//统计{int sm=0;char n[20];cout<<"请输入站名:"<<endl;cin>>n;while (n){p=p->next;if(p==NULL){if((strcmp(q->n,n)==0)||(strcmp(q->m,n)==0)){sm++;}break;}if((strcmp(p->n,n)==0)||(strcmp(p->m,n)==0)){sm++;}}if(sm==0) cout<<"查无次车(-_-)"<<endl;cout<<"统计车次数目为:"<<sm<<endl;}};void welcome(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSI TY |FOREGROUND_GREEN);cout<<"$----------------------------------$"<<endl;cout<<"| |"<<endl;cout<<"| **欢迎进入车次信息管理系统** |"<<endl;cout<<"| |"<<endl;cout<<"@----------------------------------@"<<endl;cout<<" 按任意键进入"<<endl;getch();}void mainmenu(){cout<<"1.管理员"<<endl;cout<<"2.乘客"<<endl;cout<<"3.退出本系统"<<endl;}void display(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSI TY |FOREGROUND_RED);cout<<"************************************************************************ ********";cout<<" 1:增加车次信息!";cout<<"\n 2:修改车次信息!";cout<<"\n 3:查找车次!";cout<<"\n 4:显示车次信息!";cout<<"\n 5:删除车次信息!";cout<<"\n 6:删除所有车次信息!";cout<<"\n 7:列车统计";cout<<"\n 8:退出!"<<endl;cout<<"************************************************************************ ********"<<endl;cout<<"请输入菜单选项:"<<endl;}void main(){char i;char c;char n[20];welcome();weihulei a,*w=NULL;NODE *k=NULL;do{mainmenu();cin>>c;switch(c){case'1':{w=&a; w->xianshi();do {display();i=getch();switch(i){case'1':{a.gongneng(k);break;}case'2':{a.gongneng(n);break;}case'3': {chaxunlei b(a);b.gongneng();break;}case'4':{a.gongneng();break;}case'5':{a.del(k);break;}case'6':{a.del();break;}case'7': {tongjilei c(a);c.gongneng();break;}case'8':{cout<<"谢谢使用本系统!"<<endl;break;}default:{cout<<"输入错误(-_-)!"<<endl;break;}}} while(i!='8');break;}case'2':{chaxunlei l(a);w=&l;do {w->xianshi();i=getch();switch(i){case'1': {chaxunlei b(a);b.gongneng();break;}case'2':{a.gongneng();break;}case'3':{tongjilei c(a);c.gongneng();break;}case'4':{cout<<"谢谢使用本系统!"<<endl;break;}default:{cout<<"输入错误(-_-)!"<<endl;break;}}} while(i!='4');break;}case'3':{cout<<"谢谢使用本系统!"<<endl;break;}default:{cout<<"输入错误(-_-)!"<<endl;break;}}}while(c!='3');}3.3界面设计与各功能模块实现3.3.1界面设计1.系统开始界面void welcome(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSI TY |FOREGROUND_GREEN);cout<<"$----------------------------------$"<<endl;cout<<"| |"<<endl;cout<<"| **欢迎进入车次信息管理系统** |"<<endl;cout<<"| |"<<endl;cout<<"@----------------------------------@"<<endl;cout<<" 按任意键进入"<<endl;getch();}2.操作人员类型选择界面void mainmenu(){cout<<"1.管理员"<<endl;cout<<"2.乘客"<<endl;cout<<"3.退出本系统"<<endl;}3.乘客进入界面void xianshi(){cout<<"************************************************************************ ********";cout<<"\n 1:查找车次!";cout<<"\n 2:显示车次信息!";cout<<"\n 3:列车统计";cout<<"\n 4:退出!"<<endl;cout<<"************************************************************************ ********"<<endl;cout<<"请输入菜单选项:"<<endl;}};4.管理员进入界面void display(){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSI TY |FOREGROUND_RED);cout<<"************************************************************************ ********";cout<<" 1:增加车次信息!";cout<<"\n 2:修改车次信息!";cout<<"\n 3:查找车次!";cout<<"\n 4:显示车次信息!";cout<<"\n 5:删除车次信息!";cout<<"\n 6:删除所有车次信息!";cout<<"\n 7:列车统计";cout<<"\n 8:退出!"<<endl;cout<<"************************************************************************ ********"<<endl;cout<<"请输入菜单选项:"<<endl;3.3.2各功能模块实现1.增加功能void gongneng(NODE *n){q= new NODE;q->next=p;n=p=q;cout<<"经过起点站名称:";cin>>p->n;cout<<"经过终点站名称:";cin>>p->m;cout<<"车次号码:";cin>>p->num;cout<<"发车时间:";cin>>p->time;}2.显示功能void gongneng(){p=q;while (p!=NULL){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;p=p->next;}p=q;}3.删除功能void del( NODE *k){k=new NODE;k=p=q;char n[20];cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL&&(strcmp(p->num,n)!=0)!=0){k=p;p=p->next;}if (p==NULL){cout<<"查无此车(-_-)!!"<<endl;}else{if (p==q)q=q->next;elsek->next=p->next;free(p);p=q;cout<<"删除成功!"<<endl;}}void del(){p=q=NULL;cout<<"所有信息已删除!" ;}4.修改功能void gongneng(char n[20]){p=q;cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL&&(strcmp(p->num,n)!=0)!=0){p=p->next;}if (p==NULL){cout<<"查无此车!!"<<endl;}else{cout<<"经过起点站名称:";cin>>p->n;cout<<"经过终点站名称:";cin>>p->m;cout<<"车次号码:";cin>>p->num;cout<<"发车时间:";cin>>p->time;}cout<<"按任意键返回!!"<<endl;}5.查询功能void gongneng(){p=q;char n[20];char m[20];char i;cout<<"请选择查询方式:1车次查询;2站名查询;3站-站查询\n";cin>>i;if (p==NULL){cout<<"没有列车信息(-_-)!!"<<endl;}switch(i){case'1':{cout<<"请输入车次号码:"<<endl;cin>>n;while (p!=NULL){if(strcmp(p->num,n)==0){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}case'2':{cout<<"请输入站名:"<<endl;cin>>n;while (p!=NULL){if((strcmp(p->n,n)==0)||(strcmp(p->m,n)==0)){ cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}case'3':{cout<<"请输入起点站名:"<<endl;cin>>n;cout<<"请输入终点站名:"<<endl;cin>>m;while (p!=NULL){if((strcmp(p->n,n)==0)&&(strcmp(p->m,m)==0)){cout<<"经过起点站名称:"<<p->n<<endl;cout<<"经过终点站名称:"<<p->m<<endl;cout<<"车次号码:"<<p->num<<endl;cout<<"开车时间:"<<p->time<<endl;}p=p->next;}cout<<"按任意键返回!!"<<endl;return;}default:return;}}6.统计功能void gongneng()//统计{int sm=0;char n[20];cout<<"请输入站名:"<<endl;cin>>n;while (n){p=p->next;if(p==NULL){if((strcmp(q->n,n)==0)||(strcmp(q->m,n)==0)){sm++;}break;}if((strcmp(p->n,n)==0)||(strcmp(p->m,n)==0)){sm++;}}if(sm==0) cout<<"查无次车(-_-)"<<endl;cout<<"统计车次数目为:"<<sm<<endl;}};第4章系统测试4.1测试过程1.首先进入操作人员类型选择界面2.管理员主菜单3.增加车次信息4.修改车次信息5.查询车次信息6.显示车次信息7.删除车次信息8.删除后统计车次信息4.2测试结果说明此系统基本实现了车次信息管理,首先是操作人员选择,如果是管理员则选择2,在管理员进入功能界面的时候,需要输入密码,此系统设计的默认密码为123456,然后即可操作各个功能,其中的查询功能有三种方式,可按车次、站名、站站查询,通过选择不同的编号即可实现查询功能,如果要退出该系统,选择当前菜单提示的序号即可。