这是接着上面的,因为内存太小了,发不完,所以再接着发,谢谢各位了!
#include
#include
#include
#include
#include
#include
#include ///////////////使用string类的程序
#include "station.h"
StationFrameptr search(StationFrameptr head,int target);
//前条件:head指针指向链表的表头
//最后一个节点的指针变量是NULL
//如果列表为空,那么head为NULL
//如果没有任何节点包含target,函数返回NULL
using namespace std;
namespace ArriveStationsavitch//使用命名空间
{
//使用cstddef:
ArriveStation::ArriveStation():station_name(NULL)
{
//主体有意留空
}
//使用cstddef:
bool ArriveStation::empty() const
{
return (name==NULL);
}
//使用cstddef:
StationFrameptr search(StationFrameptr head,int target)
{
StationFrameptr here = head;
if(here==NULL)
{
return NULL;//空列表
}
else
{
while((here->station_name!=target) && (here->link!=NULL))
here=here->link;
if(here->station_name==target)
return here;
else
return NULL;
}
}
ArriveStation::ArriveStation(char s_name,char time_fly,char number_flight,char number_Plane,int leave_ticket)
{
char station_name[10];
Flight_Line show[10];
char number_flight;
int leave_ticket;
input(show); //////////////////////////////从文件输入数据;
for(int i = 0 ; i < 10; i++)
{
if(show[i].station_name!= s_name)/////////////////判断查找的终点站是否存在;
{
if (i != 9)
{
continue;
}
else
{
cout << "错误信息."<< endl;
}
}
else
{
cout <<"终点站"< <<"飞机号"< <<"航线号"< <<"日期(飞行时间)"< <<"日期(上次飞行时间)"< <<"余票数"
<
cout << show[i].station_name< << show[i].number_plane< << show[i].number_flight< << show[i].time_fly< << show[i].last_time_fly< << show[i].leave_ticket< break;
}
}
cout << "请输入要查询的航班的航班号和余票数:";
cin >> number_flight
>> leave_ticket;
book_ticket(number_flight,amount_ticket,show) ////////////查找航班的余票数是否符合客户要求;
}
void ArriveStation::input(istream& ins,Flight_Line show[])//////////////////////从文件读入数据,复值数组;
{
int index = 0;
ifstream in_stream;
in_stream.open("flightline.dat");
if(in_stream.fail())
{
cout << "Input file opening fail.\n";
exit(1);
}
else
{
while(!in_stream.eof())
{
in_stream >> show[index].station_name
>> show[index].number_plane
>> show[index].number_flight
>> show[index].time_fly
>> show[index].last_time_fly
>> show[index].leave_tieckt ;
if (show[index].leave_ticket != 0)
{
for (int i = 0; i < show[index].leave_ticket; i++)
in_stream >> show[index].number_seat[i];///////////////////////输入余票的座位号;
}
index++;
}
}
instream.close();
}
--------------------next---------------------
阅读(1318) | 评论(0) | 转发(0) |