计算机软件技术基础课程设计铁路售票查询系统的设计与实现.doc
《计算机软件技术基础课程设计铁路售票查询系统的设计与实现.doc》由会员分享,可在线阅读,更多相关《计算机软件技术基础课程设计铁路售票查询系统的设计与实现.doc(24页珍藏版)》请在三一办公上搜索。
1、湖南文理学院课程设计报告课程名称: 计算机软件技术基础课程设计 系 部: 电气与信息工程学院 专业班级: 通信09103班 学生姓名: 指导教师: 完成时间: 2011.12.27 报告成绩: 评阅意见: 评阅教师 日期 目录摘要3关键词3第一章 需求分析41.1 用户功能需求41.2 数据流图6第二章 概念结构设计72.1 火车基本表72.2 火车时刻表72.3 火车站表52.4 省份表6 第三章 物理结构设计8 第四章 系统程序的设计9 课程设计的总结22 参考文献:23 致 谢:23铁路售票查询系统的设计与实现摘要:它是通过系统的方法、原理来售出火车票。本款系统采用人性化的售票管理模式,
2、能很好的解决了乘客购票难,售票工作人员任务重的问题。本款软件采用身份证作为身份验证的初始凭证,乘客按照系统所显示的操作逐一输入票务信息。系统会通过预先存入的程序导出客户所需信息和客户要求。为了防止非法份子使用假身份证购票,在预命令中就事先输入了相关的信息,此类状况会直接导出无效信息,并显示红色警报信息。关键词: 铁路;售票;查询;系统;身份证Abstract:It is through a systematic approach, principle to sell train tickets. This system adopts the humanized management mode,
3、 it can be a good solution to the passenger ticket, ticket sales staff arduous tasks of the problem. The software adopts the identity card as the authentication certificate according to the initial, passenger system revealed by operation to enter one by one ticket information. The system will advanc
4、e through a stored program derived required customer information and customer requirements. In order to prevent unauthorised person using a false identity card purchase, the prefetch commands in advance input the relevant information, this kind of situation will directly export the invalid informati
5、on, and display the red alert information.Keyword:Railway; ticketing; query; system; identity card一、 需求分析中国地域广大,火车线路错综复杂。另一方面人们生活质量逐渐提高,旅游业发展迅猛,外出乘车旅游的旅客也越发增多,为了能选择一个最佳路线,我们很有需要建立一个查询火车路线,进而选定火车票的系统。全国有大量的人员通过搭乘火车到达目的地。而与火车的特殊性及可能经过多个城市,每个城市的车站可以出售此火车的车票。而且同一车站可能有多辆车经过。许多希望以最快的方式选择自己想来乘坐的那一趟列车。所以以人工
6、的方式是不可能实现这种功能的。一种可行的方案是基于客户端服务器的体系结构。服务器为数据库系统,存储所有必要的信息。客户端通过连接到服务的应用程序快速、准确地完成相应的工作。列车票务管理系统的实施,将会在一定程度上促进铁路客运生产力和生产关系的变革,增强市场竞争能力,提高铁路部门的工作效率,提升管理水平,减少劳动强度,方便广大旅客购票,有一定的社会和经济效益。1.1 用户功能需求 旅客购票需求 l 按车次查询车票信息:旅客可根据始发站名和终到站名查询到全国任意两站之间的所有车次,并且相应查询出两站的距离公里数、票价、经过的时间和车次类型等各 种信息。l 按车站查询车票信息:用户直接输入起始站点和
7、终点站,选择火车车次和车票种类,系统输出满足条件的详细车票信息在详细调查了用户需求之后,就要开始分析用户需求。在此,我们采用自顶向下的结构化分析方法(SA方法)。首先,定义全局概念结构的框架,如下图所示。 查询系统简单总体框架结构图分解总系统为子系统后 系统数据流图分别简化为如下模型l 查询系统模型:l 分类查询功能:l 子车次查询系统: l 子车站查询系统: 依此类推,将所有子系统全部细化。将所有用户需求分析完毕之后,就要开始构造数据字典了。经过分析之后,我们需要五个不同的基本表和关系表来完成该系统的数据储存。分别是火车基本表、火车时刻表、火车站表、省份表、站点火车表。数据结构定义如下表所示
8、。数据结构名含义说明组成火车基本表定义了各列火车的简单信息火车车次号,火车种类,始发站,终点站,始发时间,到站时间,总路程,总时间火车时刻表定义了所有列车的有关信息火车车次号,火车站ID,火车站名,站次,日期,出发时间,到站时间,绝对路程,票种及票价火车站表定义了各列火车及其经过车站信息火车车次号,车站名,火车站ID省份表定义了全国省份基本信息省份名,省份ID,省份拼音缩写站点火车表定义全国各省份所拥有的车站信息火车站ID,火车站名,省份ID,火车编号1.2 数据流图使用结构化分析方法,确定系统的数据主要是身份证号、车次、终点站名、发车时间和车票,对数据的操作主要有身份证证件的辨伪、车次修改、
9、终点站修改、发车时间修改、售票及打印,可以确定系统的处理逻辑和流程,得到如下所示的系统数据流图。二、概念结构设计2.1 火车基本表:2.2 火车时刻表:2.3 火车站表:2.4 省份表:三、物理结构设计系统软件结构图:四、系统程序的设计源程序:#include#include#define MAX 100#define N 50 typedef struct time /时间类型 int x,y,z; /分别对应年,月,日TIME; typedef struct cnode /票信息类型 int no; /票号 int id; /购票人证件号 TIME date; /购票日期 struct c
10、node *next;CNODE; typedef struct tnode /车次信息类型 char data; /车次编号 struct tnode *lchild,*rchild; CNODE *head;TNODE; void create(); /按车次建立二叉排序树void insert(int ); /增加新的车次(二叉排序树的插入)void del(); /取消车次(二叉排序树节点删除)void inorder(TNODE *); /中序遍历车次二叉排序树(仅显示车次信息)void inorder_all(TNODE *); /中序遍历车次二叉排序树(显示车次及售票信息)voi
11、d preorder(TNODE *); /先序遍历车次二叉排序树(仅显示车次信息)TNODE *search(); /按车次编号搜索CNODE *insert_c(CNODE *); /插入新的售票信息(单张)CNODE *insert_c_more(CNODE *); /插入新的售票信息(批量)CNODE *del_c(CNODE *,CNODE *); /退票处理(删除售票信息)CNODE *search_c(CNODE *,int); /按票号查询void search_c_id(CNODE *,int); /按购票人证件号搜索(限定某车次)void search_c_id_all(T
12、NODE *,int); /按购票人证件号搜索(所有车次)void search_date(CNODE *,TIME); /按购票日期搜索(限定某车次)void search_date_all(TNODE *,TIME); /按购票日期搜索(所有车次)void print_c(CNODE *); /输出售票纪录(单张)void print_c_all(CNODE *); /输出售票纪录(批量) TNODE *root=NULL; void main() int i,func,no,ok; TNODE *t; CNODE *c; TIME d; printf(nnn); for(i=0;i15;
13、i+) printf(=); printf(列车售票信息管理系统); for(i=0;i15;i+) printf(=); printf(n); printf(t1.车次信息管理n); printf(t2.售票记录管理n); printf(t3.售票记录查询n); printf(t4.售票记录一览n); printf(t5.退出系统n); for(i=0;in); for(i=0;iN;i+) printf(=); printf(nt1.增加新的车次); printf(nt2.取消车次); printf(nt3.返回上级菜单n); for(i=0;in); for(i=0;iN;i+) pri
14、ntf(=); printf(nt1.增加新的售票记录); printf(nt2.退票); printf(nt3.返回上级菜单n); for(i=0;ihead=insert_c_more(t-head); break; case 2: t=search(); printf(需要退票的票号:); scanf(%d,&no); t-head=del_c(t-head,search_c(t-head,no); break; case 3:main();break; default:printf(n错误功能号输入有误!请重新输入!); break; case 3: printf(nn售票记录查询n)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机软件 技术 基础 课程设计 铁路 售票 查询 系统 设计 实现
链接地址:https://www.31ppt.com/p-2386196.html