预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共30页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

. 《车票管理系统》课程设计报告 题目:车票管理系统 专业:信息与计算科学 班级:1002 学号: 姓名: 指导教师: 完成日期:2011年12月23日 ;1 . 一、课程设计目的 本课程设计的目标就是要达到理论与实际应用相结合,提高学生组织数据及 编写大型程序的能力,并培养基本的、良好的程序设计技能以及合作能力。 设计中要求综合运用所学知识,上机解决一些与实际应用结合紧密的、规模 较大的问题,通过分析、设计、编码、调试等各环节的训练,使学生深刻理解、 牢固掌握数据结构和算法设计技术,掌握分析、解决实际问题的能力。 通过这次设计,要在程序设计方法以及上机操作等基本技能和科学作风方面 受到比较系统和严格的训练。 二、课程设计内容 一.系统的主要功能: 1.浏览班次信息 2.查询班次: ①按班次查询;②按终点查询; 3.售票 (1)售票成功(当车票有剩余,且车未发出时) (2)班次不存在 (3)票已售完(当座位数小于等于已定票人数) (4)车已发出 4.退票 退票成功(输入的班次号存在且当前时间比发车时间早) 退票失败(班次不存在或当前时间比发车时间晚) 三、课程设计过程 1.需求分析 (1)输入的形式和输入值的范围; 录入的班次信息的输入形式和输入值的范围:车次(类型:int)发车时间小时(类型: int[0,24])发车时间分钟(类型:int[0,60])起始站及终点站(类型:voidwap(intk)) 行车时间(类型:floattimes(intk))额定票数(类型:number(intk))已定票人数(类型: nownumber(intk,inti)) (2)输出的形式;printf (3)程序所能达到的功能; ①录入详细的班次信息(发车时间,起点,终点站,行车时间,额定票数,订票人数, 是否已发车……); ②浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车 时间,则显示“此班已发出”的提示信息)。 ③查询功能(分班次查询和终点站查询两种); ④订票功能;(当查询出已定票人数小于额定载量且当前系统时间久小于发车时间才能 售票,自动更新已售票人数) ⑤退票功能;(输入所退票的班次,当本班车未发出时才能退票,自动更新已售票人数) ;2 . ⑥临时增加班次功能; 2.概要设计 车票管理系统 进进进 入入入增 班班终售退加 次次点票票班 一查站次 览询查 询 3.详细设计 进入车票查询界面 按按 bc 车票查询按终 班点 次站 查查 询询 按提示操作继续查找,按1返回主菜单 进入售票界面 依据提示操作 售票售班票车 次 票不已已 成售发 功存完出 在 根据提示继续售票,返回主菜单按1 ;3 . 4.调试分析 内容包括: a.调试过程中遇到的问题是如何解决的以及对设计与实现的回顾讨论和分析; 1.我们将一个个功能分为一个个函数,在发车时间上我们遇到了一些阻碍!我本来想通 过算法来输出发车时间,没想到一次次的实验不行!于是我们将发车时间的分为小时段和分 钟段!使用case函数输出. inthour(intk) { switch(k) { case1: return07;break; case2: return10;break; 。。。。。。。。。。。。(省略一部分) case27: return19;break; case28: return22;break;/*d到罗源一天的发车时间小时段*/ } }/*开车时间段*/ intminute(intk) { switch(k) { case1: return00;break; case2: return00;break; 。。。。。。。。。。(省略一部分) case27: return30;break; case28: return30;break;/*d到罗源一天的发车时间分钟段*/ } }/*开车时间段*/ 2.是终点站的输出,我们一开始是使用字符串的输出,这样以便于按终点站查找时能进 行比较。但这种方法我们又没有实现!于是我们干脆用void,使用简便的方法,达到相同的 目的. voidwap(intk) { switch(k) { case1: ;4 . 闽清 case2: 长乐 case3: 连江 case4: 永泰 case5: 福清 case6: 罗源 } }/*输入终点站的函数*/ 3.是时间的问题,这源于要比较发车时间与当前的时间,判断这班车到底有没有发车, 和能不能订票与退票,我们用了一个时间函数,输出了当前的时间,但那边有年月日,不好 进行提取和比较,于是我们采用输出了时间,然后看着那个时间手动的提取。