• 大小: 17KB
    文件类型: .cpp
    金币: 2
    下载: 0 次
    发布日期: 2024-02-03
  • 语言: C/C++
  • 标签: 火车票  

资源简介

课题内容和要求 火车票模拟订票系统是功能包括:管理员管理系统和乘客订票系统两大子系统。 一、管理员系统中,管理员通过身份验证,可以对火车时刻表进行插入、删除、修改、查询、显示等操作。 二、乘客订票系统中,乘客通过显示的火车时刻表,可以查找车票、订购车票、退订车票。 三、退出系统时保存火车时刻表和乘客信息表。 PS:火车时刻表包含的数据:火车的车次、始发地、目的地、时间表、价格、余票数、编号。 乘客信息包含的数据:乘客的姓名、身份证、订票数量、要订火车的编号。

资源截图

代码片段和文件信息

#ifdef WIN32
#pragma warning (disable: 4514 4786)
#endif
#ifndef _TImetaBLE
#define _TImetaBLE
#ifndef _INTERFACE
#define _INTERFACE
#include
#include
#include
#include
#include 
using namespace std;
class Timetable
{
protected:
string checi;/*车次*/
string shifadi;/*始发地*/
string mudidi;/*目的地*/
string shijianbiao; /*时间表*/
string price;/*价格*/
int yupiaoshu;/*余票数*/
string bianhao;
public:
Timetable(string ccstring sfdstring mddstring sjbstring pint ypsstring bianhao);/*构造函数*/
string GetCheci();/*返回车次*/
string GetShifadi();/*返回始发地*/
string GetMudidi();/*返回目的地*/
string GetShijianbiao();/*返回时间表*/
string GetPrice();/*返回价格*/
int GetYupiaoshu();/*返回余票数*/
string GetBianhao();/*返回编号*/
bool operator<(Timetable tb)const;/*重载<运算,set容器要求元素之间满足该关系*/
};
#endif
Timetable::Timetable(string ccstring sfdstring mddstring sjbstring pint ypsstring bianha)//构造函数实现
{
checi=cc;
shifadi=sfd;
mudidi=mdd;
shijianbiao=sjb;
price=p;
yupiaoshu=yps;
bianhao=bianha;
}
string Timetable::GetCheci()
{
return checi;
}
string Timetable::GetShifadi()
{
return shifadi;
}
string Timetable::GetMudidi()
{
return mudidi;
}
string Timetable::GetShijianbiao()
{
return shijianbiao;
}
string Timetable::GetPrice()
{
return price;
}
int Timetable::GetYupiaoshu()
{
return yupiaoshu;
}
string Timetable::GetBianhao()
{
return bianhao;
}
bool Timetable::operator<(Timetable tb)const/*重载<运算,set容器要求元素之间满足该关系*/
{
if(checi return true;
else 
return false;
}
class Interface//管理员界面类
{
protected:
settable>tt;/*数据集*/
public:
Interface()
{ReadFile();}
void Display();/*输出界面信息*/
void Run();/*运行界面主体功能*/
void Insert();/*插入数据*/
void Delete();/*删除数据*/
void Change();/*修改数据*/
void Search();/*查询数据*/
void Output();/*输出所有数据*/
void ReadFile();/*从文件中读取数据*/
void Save();/*将数据保存到文件*/
void PrintOne(settable>::iterator t);
};/*输出单条数据*/
#endif
void Interface::Display()//输出界面信息实现
{
cout< cout<<“▂▃▅▆██▆▅▃▂“< cout<<“┌一一一一一一一一┐“< cout<<“︱    管理员系统  ︱“< cout<<“︱  0.退      出  ︱“< cout<<“︱  1.插入时刻表  ︱“< cout<<“︱  2.删除时刻表  ︱“< cout<<“︱  3.修改时刻表  ︱“< cout<<“︱  4.查询时刻表  ︱“< cout<<“︱  5.显示时刻表  ︱“< cout<<“└一一一一一一一一┘“<}
void Interface::Run()/*运行界面主体功能*/
{
int choice;
do
{
Display();
cout<<“请选择需要的功能:“;
cin>>choice;
switch(choice)
{
case 0:
break;
case 1:
Insert();
break;
case 2:
Delete();
break;
case 3:
Change();
break;
case 4:
Search();
break;
case 5:
Output();
break;
}
}while(choice);
Save();
}
void Interface::Save()/*将数据保存到文件*/
{
ofstream out(“d:\\火车时刻表.txt“);
if(!out)
{
cout<<“Cannot open the file\n“;
return;
}
settable>::iterator t=tt.begin();
while(t!=tt.end())
{
out<GetCheci()<<‘ ‘<GetShifadi()<<‘ ‘<

评论

共有 条评论