求助:一个订票和退票的问题
一个航空客运的问题.rar
(4.91 KB)
代码太长,贴不上来。上传附件了。
请求各位前辈解惑
需要求助的问题:航线添加成功,但是打印不出来?
下面是我测试的代码,调用两个模块又是正常的。添加航线成功,又能打印出来。不知道附件里的代码是哪里出问题了?
程序代码:
#include <iostream> #include <string> using namespace std; class transportNode//航线类节点 { friend class transport; private: string finish;//目的地 string flightname;//航班名 int flightnum;//飞机编号(航班号) int day;//飞行日期 int limitednum;//乘员限额 int remainber;//余票 struct booknode { public: string name;//乘客姓名 char ID[20];//乘客身份证号码 int ticketnum;//票数 int rate;//舱位等级 }b[40]; struct sparenode { public: string name;//乘客姓名 int ticketnum;//票数 int m;//记录排队等候的顾客的数量 }s[40]; transportNode *next; }; class transport { public: transport();//无參构造函数构造头节点 void recort();//记录航班信息 void delrecort();//删除航班 void chest();//实现根据输入的目的地查询的功能 void book();//实现旅客的订票功能 void bounce();//实现退票功能 void outTran();//打印航班信息 int lookup(string cityname);//返回查询的航班 int searchID();//查询乘客ID是否存在 int GetElem(); private: transportNode *head; }; transport::transport() { head = new transportNode; head->next = NULL; } void transport::recort() { transportNode* t; transport(); t = new transportNode; cout << " 请输入航线终点:"; cin >> t->finish; cout << " 请输入航班号:"; cin >> t->flightname; cout << " 请输入飞机号:"; cin >> t->flightnum; cout << " 请输入飞行日期:"; cin >> t->day; cout << " 请输入乘客限额:"; cin >> t->limitednum; t->remainber = t->limitednum; //head->next=t->next; //t->next=head; t->next=head->next; head->next=t; //t->next = head->next; //head->next = t->next; cout << "添加航线成功!" << endl; } void transport::outTran()//显示所有航班 { transportNode* p; p = head->next; if (p == NULL) { cout << "没有任何航班!" << endl; exit(-1); } while (p) { cout << "航班目的站点" << "\t" << "航班号" << "\t" << "飞机编号" << "\t" << "飞行日期" << "\t" << "乘客限额" << "\t" << "余票" << endl; cout << p->finish << "\t" << p->flightname << "\t" << p->flightnum << "\t" << p->day << "\t" << p->limitednum << "\t" << p->remainber << endl; p = p->next; } } int main() { transport p; p.recort(); p.outTran(); return 0; }