火车订票管理系统

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

学号11~15 选题三:火车票订票管理系统

1.基本要求:为方便管理火车票购买信息,编写一个火车票订票管

理系统软件。系统记录必须包括订票人姓名、订票人身份证号、始发站、终到站、票价、席别、订票时间等。

2.基本管理功能:

[1]添加:增加一条订票人的记录到管理系统中。

[2]查询:根据订票人身份证查找订票人的相关信息并显示,若

找不到也要给出相应提示。

[3]修改:在管理系统中修改订票人的订票记录。

[4]保存:将所有订票信息保存在一个文件中(数据库文件或普

通的文本文件)。

[5]读取:从文件中读取已保存了数据。

[6]删除:从管理系统中删除一条记录。

[7]恢复:能恢复被删除的记录。

[8]统计:(A) 统计每天订票张数和总车票金额;(B) 统计单价

在100元以下、100~400元之间和400元以上的票数总张

数及总金额;(C) 以表格形式打印所有订票信息。

源代码:

#include

#include

#include

#include

using namespace std;

int d;//用于选择(按1继续,按2退出,按他其他报错待完善)

int x=1;//用于脱出while循环

string sfz;//身份证号码,用户输入可用到

class ticket

{public:

string ID;

string name;

string Sstation;

string Tstation;

float price;

string seat;

string time;

ticket *next;

ticket(string I,string n,string S, string T,float p, string s,string t)

{ID=I;name=n;Sstation=S;Tstation=T;price=p;seat=s;time=t;}

void display();

};

void ticket::display()

{cout<

cout<<"|"<

}

void menu()

{cout<

cout<

cout<<" ************欢迎使用************"<

cout<

cout<<" **请输入选项前的编号**"<

cout<

cout<<" **************************************************************"<

cout<<" * 1.添加车票信息*"<

cout<<" * 2.查询车票信息*"<

cout<<" * 3.修改车票信息*"<

cout<<" * 4.删除车票信息*"<

cout<<" * 5.恢复车票信息*"<

cout<<" * 6.显示车票信息*"<

cout<<" * 7.统计车票信息*"<

cout<<" * 8.保存车票信息*"<

cout<<" * 9.读取车票信息*"<

cout<<" * 0.离开*"<

cout<<" **************************************************************"<

}

ticket *head=NULL,*del=NULL,*p0,*p1,*p2,*p3,*p4;//head数据链表头指针,p0,p1,p2添加函数专用,避免发生错误

int check(string b)//身份证号码作为功能基本辨别数据,应该有一个函数专门检查其是否重复,0 表示重复,1 表示不重复

{ticket *ch;

ch=head;

int che=1;

while(ch!=NULL)

{if(ch->ID==b){che=0;ch=NULL;}

else {ch=ch->next;}

}

return che;

}

int check1(string b)// sbl

{ticket *ch;

ch=del;

int che=1;

while(ch!=NULL)

{if(ch->ID==b){che=0;ch=NULL;}

else {ch=ch->next;}

}

return che;

}

int add() //将订票数据保存在一个基础链表中

{system("cls");

float price;

string name,ID,Sstation,Tstation,seat,time;

if(head==NULL) //以下为链表为空的情况

{

cout<<"=============开始输入订票信息============="<

cout<<"请输入订票人身份证号码:";

cin>>ID;

cout<<"请输入订票人姓名:";

cin>>name;

cout<<"请输入始发站:";

cin>>Sstation;

cout<<"请输入终点站:";

cin>>Tstation;

cout<<"请输入票价:";

cin>>price;

cout<<"请输入席别:";

cin>>seat;

cout<<"请输入订票时间(年月日以“-”隔开):";

cin>>time;

head=p1=p2=new ticket(ID,name,Sstation,Tstation,price,seat,time);

x=1;

while(x)

{system("cls");

cout<<"按1继续输入,按2退出-》";

cin>>d;

if(d==1)

{system("cls");

p1->next=NULL;

cout<<"=============开始输入订票信息============="<

cout<<"请输入订票人身份证号码:";

相关文档
最新文档