车票管理系统C语言课程设计实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东华理工大学C语言课程设计
题目名称车票管理系统程序设计
姓名刘韬
学号************
班级1521501
指导教师徐猛华
编写日期2016年1月
目录
第一章、设计任务需求分析 (2)
1、目标;
2、要求;
3、学生成绩管理系统;
第二章、总体设计 (2)
1、采用的基本思想及完成过程;
2、遇到的问题和解决的方法;
3、程序设的流程图;
第三章、所负责部分详细设计 (4)
1、程序所需函数;
2、明确分工各组员所负责的模块;
3,函数功能及参数的意义;
4、模块功能说明;
第四章、程序运行结果测试 (7)
1、录入班车信息;
2、浏览班车信息;
3、按班次查询;
4、按终点站查询;
5、订票;
6、退票;
7、退出系统;
第五章、结论与心得 (10)
第六章、致谢 (10)
第七章、附录 (11)
正文
第一章、设计任务需求分析
1、目标:
(1)掌握和利用C语言进行程序设计的能力。
(2)理解和运用结构化程序设计的思想和方法。
(3)学会调试一个较长程序的基本方法。
(4)掌握书写程序设计开发文档的能力(书写课程设计报告)。
2、要求:该系统需实现的功能有
(1)录入班次信息(信息用文件保存),可不定时地增加班次数据。
(2)浏览班次信息,可显示出所有班次当前状总(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。
(3)查询路线:可按班次号查询 ,可按终点站查询
(4)售票和退票功能:
A:当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数。
B:退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数。
3、学生成绩管理系统:
程序执行出一个有好的人机界面,供人合理的操作,完成浏览查询、退订票以及自动更新的功能。
第二章、总体设计
1、采用的基本思路:
改程序设计采用的思路是利用结构体存放车辆信息,车辆的信息有操作人员录入,录入完成后,通过菜单的提示进行相应的操作,不同的模块采用不同的算法进行管理,主要采用的头文件有:#include
define size 4。
(1)录入信息:
录入信息时调用了void input( )函数通过循环依次输入车辆的信息,并利用结构体{ int b; //班次
char f[5]; //发车时间
char q[20]; //起点
char z[20]; //终点
double x; //行车时间
int e; //额定载量
int y; //已订票人数
};
来存放它
(2)浏览信息:
通过函数void output( ) 可以显示各班次的详细信息。
(3)查询信息:
通过函数void check1( )和函数void check2( )可以通过两种不同的方式查询信息。
(4)退票预订票:
通过函数void rback ( )和函数void order ( ) 来实现。
2、遇到的问题和解决的方法:
在录入车次方面遇到建立文件保存车次问题,由于没学文件所以在这个地方遇到了困难,开始对录入的车次总是无法保存,后面通过借鉴网上的一些算法和从新学习文件一章以及书本的一些例程最后得以解决。
还用在调试过程中无法退出界面,最后通过对程序的整体分析发现在主函数内没有跳出语句,后面加上return 0 ;后得以解绝。
在人机友好界面处理方面,浏览班次时无法对齐,通过调位参得以解决。
在程序整体布局方面由于只是的欠缺,在与系统时间比较表示班次已发出方面没有得到实现,这个问题还没解决,希望通过以后的学习能够很好的解决它。
还有程序在执行时的稳定性方面还不够。
3、程序设计的流程图:
第三章、所负责部分详细设计1、程序所需函数:
(1)录入车次信息函数;
(2)浏览车次函数;
(3)按班次查询汽车信息函数;(4)按终点询车次信息函数;
(5)订票函数;
(6)退票函数;
(7)主函数(菜单函数)。
2、明确分工各组员所负责的模块:
小组经讨论将程序分为四大块
第一块:头文件、函数的声明和主函数,然后将声明的子涵交由组员完成,这一块由我负责。第二块:录入和浏览函数实现录入和浏览的功能。
第三块:查询函数实现两种查询功能。
第四块:订票退票函数实现订退票功能。
3、函数功能及参数的意义:
(1)头文件
#include
#include
#include
# define size 4
struct t_type //声明一个结构体类型
{
int b; //班次
char f[5]; //发车时间
char q[20]; //起点
char z[20]; //终点
double x; //行车时间
int e; //额定载量
int y; //已订票人数
};
void input(); //声明录入车次信息
void output(); //声明浏览车次信息
void check1(); //声明查询
void check2(); //声明查询