火车票管理系统课程设计报告Word格式文档下载.docx

上传人:b****3 文档编号:15972744 上传时间:2022-11-17 格式:DOCX 页数:14 大小:118.46KB
下载 相关 举报
火车票管理系统课程设计报告Word格式文档下载.docx_第1页
第1页 / 共14页
火车票管理系统课程设计报告Word格式文档下载.docx_第2页
第2页 / 共14页
火车票管理系统课程设计报告Word格式文档下载.docx_第3页
第3页 / 共14页
火车票管理系统课程设计报告Word格式文档下载.docx_第4页
第4页 / 共14页
火车票管理系统课程设计报告Word格式文档下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

火车票管理系统课程设计报告Word格式文档下载.docx

《火车票管理系统课程设计报告Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《火车票管理系统课程设计报告Word格式文档下载.docx(14页珍藏版)》请在冰豆网上搜索。

火车票管理系统课程设计报告Word格式文档下载.docx

内容详实程度

文字表达熟练程度

回答问题准确度

简短评语

教师签名:

年月日

评分等级

备注

评分等级有五种:

优秀、良好、中等、及格、不及格

火车票务管理系统

一、课题内容和要求

(一)课题内容

该系统要求实现一个简单、实用的火车票管理程序,主要功能包括火车票数据的录入、查找、删除、显示、售票、退票等。

所有火车票数据都要利用文件系统保存,以备系统下次运行时使用。

通过此课题,熟练掌握文件、数组、指针的各种操作,以及一些基本算法思想的应用。

(二)课题要求

(1)火车票数据由多条记录组成,其信息包括:

车次,发车时间,起点站,终点站,行车时间,额定载量,已售票人数等。

(2)数据保存形式:

所有火车票数据要以文本或二进制文件保存。

(3)需要实现的功能

1)新增火车票数据记录。

2)查找火车票数据(可按车次,发车时间、起点站、终点站等查找)。

3)删除火车票数据记录(先查找,再删除。

若查找出多条记录,则进一步提示用户选择记录的车次,再删除)。

4)对火车票排序(可按车次、发车时间、起点站、终点站等排序。

)。

5)显示当前所有火车票信息列表。

6)售票(先查找,当确定车次后,根据售票张数对该车次的已售票人数进行修改)。

7)退票(售票的逆处理,过程与售票类似)。

8)保存火车票数据到文件中。

9)从文件中读入火车票数据。

(4)界面功能要求:

1)采用友好的字符界面,实现一个功能控制菜单。

2)每次操作都从该菜单选择,利用循环结构使得一次运行程序可进行多次操作。

需求分析

一、功能分析图

二、录入班次信息:

依次输入班次、起点站和终点站等信息同时保存在文件中,并可以随时增加新的班次信息。

三、浏览班次信息:

输出保存在文件中的全部班次信息,并区分当前的车次是否已发出,如发出则标记“此车已发出”。

四、按班次号查询路线:

以输入的班次号为依据进行查找,找到匹配项则输出该项完整的班次信息;

未找到则显示“未找到该车次信息!

五、按起点站查询路线:

输入的起点站为依据进行查找,找到匹配项则输出该项完整的班次信息;

六、按终点站查询路线:

输入的终点站为依据进行查找,找到匹配项则输出该项完整的班次信息;

七、排列发车时间表:

按照发车时间从早到晚的顺序逐条显示车次信息。

八、售票功能:

依次输入“售票数目”和“班次号”可出售未发出的班次的车票。

九、退票功能:

依次输入“退票数目”和“班次号”可退距发车时间大于半小时的班次的车票。

三、概要设计

(1)类:

#include<

>

#include<

classTicket

{

charno[20];

charname_b[20];

charname_e[20];

inthour;

intminute;

inttra_time;

inteding;

intyupiao;

public:

voidshoupiao(fstream&

f);

voidtuipiao(fstream&

voidsearchbynumber(fstream&

voidsearchbybeginplace(fstream&

voidsearchbyendplace(fstream&

voidluru(fstream&

voidliulan(fstream&

voidpaixu(fstream&

friendostream&

operator<

<

(ostream&

out,constTicket&

t);

our)||(T[j].hour==local->

tm_hour)&

&

(local->

tm_min>

T[j].minute))

{

cout<

T[j]<

"

"

此车已发出!

endl;

}

else

cout<

}

}

voidTicket:

:

shoupiao(fstream&

f)

constintNUM=sizeof(Ticket);

intn;

longt;

charm[20];

TicketT;

structtm*local;

cout<

请输入售票的数目:

cin>

n;

请输入售票的班次:

m;

time(&

local=localtime(&

(0,ios:

beg);

o;

cin>

t[i].hour;

t[i].minute;

t[i].name_b;

t[i].name_e;

t[i].tra_time;

t[i].eding;

t[i].yupiao;

}

end);

//文件指针指向文件尾

for(i=0;

i<

num;

i++)

((char*)&

t[i],sizeof(Ticket));

xiugai(fstream&

charn[10];

Tickett;

请输入你要修改的班次:

boolfd=false;

while(!

()&

!

fd)

{

((char*)&

t,sizeof(Ticket));

if(fd=(n))

{

请依次输入"

endl<

发车时间(时)、发车时间(分)、起点站、终点站、行车时间、额定票数和余票数量"

;

((char*)&

voidmenu()//菜单函数

******************************菜单********************************"

1:

录入车次信息"

2:

浏览车次信息"

3:

根据车次号查询路线"

4:

根据起点站查询路线"

5:

根据终点站查询路线"

6:

排列发车时间表"

7:

售票"

8:

退票"

9:

增加车次"

10:

修改车次"

0:

退出菜单"

请选择您需要操作的选项:

voidmain()

intx;

fstreamfile;

*********************欢迎您使用票务管理系统!

**********************"

menu();

while(x)

x;

("

d:

\\"

ios:

in|ios:

out|ios:

binary);

//创建并打开二进制文件

switch(x)

case1:

(file);

break;

case2:

case3:

case4:

(file);

case5:

case6:

case7:

case8:

case9:

case10:

case0:

break;

操作已完成,请继续!

();

//关闭二进制文件

************************欢迎您下次使用!

****************************"

五、测试数据及其结果分析

1、录入班次信息

输入:

1

输出:

请输入你要录入的班次信息数量:

4

请依次输入

车次、起点站、终点站、发车时间(时)、发车时间(分)、行车时间、额定票数和余票数量

G111南京扬州802010030

G222南京北京10302112035

G333南京上海1102214050

G444南京广州9302216040

2、浏览班次信息

2

G333南京上海1102214050

3、根据车次号查询路线

3

请输入你要查找的班次号:

G111

操作已完成,请继续!

4、根据起点站查询路线

请输入你要查找的班次的起点站:

南京

G444南

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 法律文书 > 调解书

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1