客运站信息管理系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象技术实训》课程实训报告客运站信息管理系统

姓名:

班级:

学号:

指导教师:

成绩:

完成时间:2016年12月

完成地点:S411

1设计题目(问题)描述和要求

某客运站因春运即将到来,客流量急剧增加,工作人员无法按时完成服务工作,不能满足乘客的出行需求,于是想开发一套智能客运站系统,实现工作人员后台操作,乘客自主选票,订票,退票的程序,以缓解出行压力。

要求:

(1)增加车辆信息

(2)更新车辆信息

(3)删除车辆信息

(4)乘客查票

(5)乘客买票

(6)乘客退票、

2系统分析

根据问题描述和要求,系统要求能够编写程序实现输入、输出、查询、增加、删除、修改、取消操作等功能,这些功能需要调用车辆类的成员函数实现。

根据案例需求可以定义一个车辆类,车辆的基本信息有车辆编号、车辆路线、票价、余票和发车时间。由于需要对车辆信息进行读入和存储,在程序中需要文件的输入输出操作。先从相应的文件中读入车辆,管理员可以对信息处理后,在退出系统的时候将已修改资料重新存储到原文件中去。

3设计

3.1Bus类的设计

3.1.1数据成员

int id; //车辆编号

int tag; //车辆数量

char road[20]; //车辆路线

3.1.2函数成员及其实现思路

(1)获取行车路线,即返回车辆路线成员变量road的值

char * Bus::getroad()

{ return road;}

获取车辆编号,即返回车辆成员变量id的值

int Bus::getid()

{ return id;}

获取车辆数量,即返回车辆成员变量tag的值

int Bus::gettag()

{return tag;}

获取用户名,返回用户名name的值

char * User::getname()

{ return name;}

获取用户人数,返回tag的值

int User::gettag()

{ return tag;}

获取用户编号,返回id的值

int User::getid()

{ return id;}

(2)设置车辆路线,即设置车辆成员变量road的值road=newroad。

void User::setroad(char ro[])

{ strcpy(road,ro)};

3.2 User类的设计

3.2.1数据成员

i nt tag; //用户总数

i nt id; //用户编号

c har name[10]; //用户姓名

3.2.2函数成员及其实现思路

(1)void User::adduser(int n,char * na)//用户注册信息添加功能的设计思路是:

用户输入其型姓名;

系统分配用户编号;

(2)void User::ytickets(int busid)//用户订票功能实现

订票功能的设计思路是:

用户选择要订票的汽车编号;

系统检索汽车编号,若汽车存在则分配订单号并提醒订票成功;

(3)int User::ntickets(int busid)//用户取消订单退票

设计思路如下:

用户输入需要退票的汽车编号;

系统检索车辆编号,成功则完成退票,反之退票失败;

(4)void User::show()//输出用户所要信息。

设计思路如下:

包括用户姓名,编号等基本信息;

系统检索用户操作信息,用户当前所有订单;

3.3主程序的设计

3.3.1全局变量、全局函数的设计

(1)void B_Data::busdata()//管理员向更新系统车辆信息。

设计思路如下:

调用void Bus::addbus()函数,添加车辆信息;

调用void Bus::setname()函数,更新车辆信息;

调用Bus * B_Data::search()函数,查找车辆信息;

调用void Bus::show()函数,显示用户信息;

调用void Bus::del()函数,删除车辆信息;

(2)void U_Data::userdata()//管理员向更新用户信息。

调用void User::addbus()函数,添加用户信息;

调用void User::setname()函数,更新用户信息;

调用Bus * U_Data::search()函数,查找用户信息;

调用void User::show()函数,显示用户信息;

调用void User::del()函数,删除用户信息;

3.2.2 主函数设计

在主函数中调用void userlogin()函数和void managelogin()函数,实现用户使用功能和管理员管理功能,分别使用上述两函数实现。

(1) 某操作算法流程

主程序调用流程图

4调试分析、测试结果

4.1.1 分析

1.设计的时候,会出现很多错误,应细心检查数据成员及成员函数是否完整,定吗编辑过程中是否出现拼写错误。

2.在简单地基础上,逐步进行添加数据成员,进而添加相应功能的成员函数,实现设计预期的结果。

3.编程就是一个不断完善的过程,先搭建框架、逐步扩充,由简到繁,最后完善。边编程,边调试,边扩充。

4.1.2 测试结果:

执行结果:

相关文档
最新文档