C语言_汽车站售票管理系统

上传人:开*** 文档编号:86847002 上传时间:2019-03-25 格式:DOC 页数:38 大小:520.50KB
返回 下载 相关 举报
C语言_汽车站售票管理系统_第1页
第1页 / 共38页
C语言_汽车站售票管理系统_第2页
第2页 / 共38页
C语言_汽车站售票管理系统_第3页
第3页 / 共38页
亲,该文档总共38页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《C语言_汽车站售票管理系统》由会员分享,可在线阅读,更多相关《C语言_汽车站售票管理系统(38页珍藏版)》请在金锄头文库上搜索。

1、xx大学(华东)上机实验报告课程名称: 软件技术基础 上机题目: 汽车站售票管理系统 组长姓名: 成员姓名: 综合成绩 201x年 xx 月xx 日一、需求分析1问题描述 要求设计一个汽车站的售票系统,具有对班次及车票管理的基本功能,要求设计的程序实用,便于操作,主要任务是用计算机对每个汽车班次的信息进行管理,包括用户验证、班次数据维护、售票管理等模块,实现班次信息的录入、修改、删除、查询,车票的售票、退票等一系列功能。界面美观可以满足基本的班次管理及售票的操作,且程序稳定,没有错误。2功能需求(1),用户验证首先要求有用户验证,输入用户名及密码,并且能判断用户类型。由此进入不同的操作界面。(

2、2),班次数据维护(只有管理员有权操作)录入班次信息:输入一个班次信息修改班次信息:根据班次号修改某个班次信息删除班次信息:根据班次号删除某个班次信息查询班次信息:分别根据班次号、发车时间、到站及其发车时间与到站的组合查询班次信息(3),售退票管理(售票员操作)售票:首先根据到站地点查询相关班次及剩余票数,若存在并且剩余票数大于购票数,则售票并计算出票价,否则,给出提示信息退票:首先按班次号进行查询,有这个班次的售票才可以进行退票处理,3数据需求用户数据:包括用户名char(10)、密码char(10)、用户类型int(1)管理员(2)售票员汽车班次数据:班次int、到站char(10)、发车

3、时间char(6)、票价(int)、座位数(int)4其它需求1) 系统用键盘操作,以选择菜单方式工作界面;2) 只考虑当日售退票情况,不提供订票功能;3) 售出的车票要有座号,假设每个班次的座位数都不超过50。5进度计划 (1)组队划分任务阶段:(11月1日到11月8日)在这一阶段首先确定组员及组长,同时研究实验内容,进行实验内容分析功能需求分析。组长进行概要设计,初步构想出软件框架,细分各项功能模块。并且让组员根据自己的能力及特长选择自己的不同的分工;同时确定编写规范与标准,主要工作包括个函数名的命名的统一,变量名的定义规范,方便个组员的函数声明,及以后组长的统一调试,避免因编写不规范带来

4、的麻烦; (2)各组员各自的模块编写设计阶段(11月9日11月16日) 主要任务包括各组员对自己所选的功能模块进行设计,编写代码,调试,界面编辑。最终完成自己的功能模块,提交文档给组长,组长负责下一阶段的调试及统一设计; (3)代码集成,总体界面编辑,整体调试阶段(11月16日到11月18日) 主要任务是组长集成各组员提交的模块代码,进行调试,保证各模块的功能在集成后能正常工作;测试发现系统的错误并调试改正,保证整个系统能协调流畅的工作;调试设计系统的工作界面,设计美观友好的人机交互界面。 (4)上机实验报告的最终编写排版阶段(11月18日到21) 实验报告的编写一直贯穿于整个实验过程,在这一

5、阶段的主要任务是由组长最终编写好实验报告,编写实验总结,用户手册,最终完成整个实验过程。打印提交实验报告。二、概要设计1软件结构设计 如图为软件结构图,表示了软件各个模块之间的调用关系;enquire 函数判断密码,用户类型管理员模块 售票员模块 用户登录log 函数ticketMenu 函数bussMenu 函数 添加车次删除车次修改车次信息查询车次信息显示所有信息查 询售 票退 票rticket 函数Add函数Delbus 函数sell 函数change 函数Prin 函数按时间与地点组合查询enqpt 函数按到站地点查询enqpla 函数按班次查询 enqnum 函数 2各功能模块的功能

6、说明 1):对于用户登录模块(log函数),其主要功能是提供一个登录界面,请用户输入用户名及密码,同时对于输入的用户名及密码进行判断,如果用户名或者密码错误就无法登录进系统。对于用户名和密码正确的用户会判断其用户类型。选择根据其用户类型是管理员还是售票员进入不同的操作主菜单; 2):管理员模块(busMenu函数),其主要功能是提供选择操作菜单,供登录进来的管理员选择不同的操作,根据用户的选择分别调用相应功能模块。一共有5个功能模块可供调用: 添加车次(Add 函数) 提供添加车次的功能。如果车次已经存在则给出提示,无法继续添加车次。如果车次信息不存在则向车次文件中写入该车次的信息并存储。 删

7、除车次(Delbus 函数) 提供删除车次信息的功能。先根据车次号进行查询,如果查询到该车次信息则显示该车次信息,并询问用户是否确认删除。如果没有该车次信息则给出提示,返回操作菜单。 修改车次信息(change 函数) 提供修改车次信息的功能。根据车次号惊醒查询,并让用户选择修改项,然后打印出修改后的车次信息,并确认。最终成功修改车次信息。 查询车次信息(enquire 函数) 提供查询车次信息的操作菜单。根据用户的不同选择提供不同的查询方式。有班次号查询,到站地点查询,按发车时间及到站地点组合查询三种不同的查询功能可供用户选择。 显示所有信息(Prin 函数) 打印当前所有的车次信息。三、详

8、细设计1所定义的数据结构在本系统中用到的数据结构有线性数据结构,包括:汽车班次数据:班次号(int)、到站char(10)、发车时间char(6)、票价(int)、座位数(int)struct Bus_type int num; char time20; char place20; int ticket; int price; BUS50,buss50;用户数据:包括用户名char(10)、密码char(10)、用户类型(int,1:管理员,2:售票员):struct USER_type char name10;char cip10;int ty;User10;2主要功能模块的算法(用N-S图

9、描述)用户登录的算法 管理员操作菜单的算法 添加车次信息的算法NS图 按发车时间与到站地点组合查询NS图3界面的设计 界面的设计主要当要输出信息是设计其工作界面,其中最重要的一项应该是输出车次信息时屏幕显示的信息。下面是几张输出信息时的截图输出车次信息时的界面四、编码实现1核心功能算法的编码实现 (1) 添加车次信息 代码:void Add()void busMenu();int jud,ai=1;int nume,ei;FILE *fpadd; printf(nttt添加车次信息n); fpe=fopen(BUS.txt,r);for (ei=0;eibnum;ei+) fscanf(fpe

10、,%d %s %s %d %d,&BUSei.num,&BUSei.time,&BUSei.place,&BUSei.ticket,&BUSei.price);rin(ei);fclose(fpe);while(ai=1) printf(ntt请输入车次号: ); scanf(%d,&BUSnumi.num); int jude=0; for (ei=0;eibnum;ei+) /判断是否存在该班次号 if(BUSnumi.num=bussei.num) jude+; if (jude=1) printf(nntt该车次信息已存在!无法添加!); break; /如果存在则做出标记,跳出本次循

11、环 if(jude=1)break;printf(ntt请输入发车时间: );scanf(%s,&BUSnumi.time);printf(ntt请输入到达地点: );scanf(%s,&BUSnumi.place);printf(ntt请输入限载人数: );scanf(%d,&BUSnumi.ticket );printf(ntt请输 入 票价: );scanf(%d,&BUSnumi.price);fpadd=fopen(BUS.txt,a); fprintf(fpadd,%d %s %s %d %dn,BUSnumi.num,BUSnumi.time,BUSnumi.place,BUSn

12、umi.ticket,BUSnumi.price);/依次输入车次信息 fclose(fpadd);numi+;/班次数加一 bnum=1+bnum; fpc= fopen(CONT.txt,w); /每添加一条班次信息 向文件中写一条信息 fprintf(fpc,%d,bnum); fclose(fpc);printf(ntt是否继续添加车次?(1)是(2)否 ); scanf(%d,&jud); system(cls); if(jud=1)ai=1;else if (jud=2)ai=ai-1;elseai=ai-1;printf(input error); jud=getch(); busMenu()(2)删除车次信息的代码 void Delbus()void busMenu();int di,chd, Dbn,djude=0,dai;printf(ttt删除班次信息);printf(nnntt请输入您想删除的班次号:); fpc=fopen

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号