基于C++的火车票管理系统C++课程设计
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
信息科学与技术学院
《程序设计基础》课程设计报告
题目名称:车票管理系统
专业班级:电子信息工程10级2班
学生姓名:王彪樊江涛
学生学号:********** **********
指导教师:**
完成日期:2011-01 目录
1 课程设计综述————————————————— 4 1.1 课程设计的目的——————————————— 4 1.
2 课程设计的题目——————————————— 4
1.3 题目要求—————————————————— 4
2 概要设计——————————————————— 4
3 详细设计——————————————————— 5 3.1 流程图——————————————————— 5
3.2 源程序——————————————————6
4 测试——————————————————— 14
5 课程设计总结—————————————————16
1.课程设计综述
1.1 课程设计的目的
让我们更加深入的了解C++的,使我们一学期学习到的东西得到实践. 1.2 课程设计的题目
火车票管理系统
1.3 题目要求
用c++设计一个系统,能提供下列服务:
(1)录入班次信息(信息用文件保存),可不定时地增加班次数据
(2)浏览班次信息,可显示出所有班次当前状态(如果当前系统时间超过了某班次的发车时间,则显示“此班已发出”的提示信息)。
(3)查询路线:可按班次号查询 ,可按终点站查询
(4)售票和退票功能
A:当查询出已定票人数小于额定载量且当前系统时间小于发车时间时才能售票,自动更新已售票人数
B:退票时,输入退票的班次,当本班车未发出时才能退票,自动更新已售票人数
2 方案选择
1)算法设计说明
由主函数进入,弹出主菜单界面,通过Switch语句选择需要的功能,可以选择班次录入,浏览班次信息,查询班次信息,购票和退票以及退出系统,以完成不同的操作.其中查询班次信息中还可以由班次查询或者终点站查询.整个系统的文件载入用一个文件载入函数承当.
3 详细设计3.1 流程图
3.2 源程序
#include
#include
#include
#include
using namespace std;
void welcome(); //欢迎子函数
void choose(); //选择子函数
void banciluru(); //班次录入子函数
void liulanbancixinxi(); //浏览班次信息子函数
void shoupiao(); //售票子函数
void tuipiao(); //退票子函数
void quit(); //退出子函数
void chaxun(); //查询子函数
int loading(); //文件载入子函数
const int MAX=20; //使数组最大值可调
const int N=50;
struct time //时间结构体,为了与系统时间做比较.
{
int hour;
int minutes;
};
struct ticket //车票结构体,包含车次,时间结构体,起点,终点,行车时间,额定载客量,已订票人数
{
int Number;
struct time Setout;
char Qidian[MAX];
char Zhongdian[MAX];
float Lasttime;
int Fixnumber;
int Fixednumber;
}car[N];
//主函数
int main()
{
welcome();
return 0;
}
//欢迎子函数
void welcome()
{
cout<<"________________________________________________________"< choose(); } //选择子函数 void choose() { string i; cin>>i; if(i=="1") banciluru(); if(i=="2") liulanbancixinxi(); if(i=="3") chaxun(); if(i=="4") shoupiao(); if(i=="5") tuipiao(); if(i=="6") quit(); else { cout<<"输入有误!请在数字1-5之间重新您的输入选择!"< choose(); } }