标题: 3、继承派生
时限:
1000ms
内存限制:
10000K
总时限:
3000ms
描述:
1.设计 StudentRecord 类。公有成员:string Name,int Number;
公有函数:void print();构造函数;析构函数。
2.设计 StudentNode 类。公有成员:StudentRecord
*Record,StudentNode *Next;并完成其构造函数和析构函数。
3.设计 LinkedList 类。定义头插入、头删除、尾插入、遍历成员函
数。并完成其构造函数和析构函数。由 LinkedList 派生 LinkedStack
类,完成 void Push(StudentRecord record),bool
Pop(StudentRecord &record)函数;由 LinkedList 派生
LinkedQueue 类,完成 void EnQueue(StudentRecord
record),bool DeQueue(StudentRecord &record)函数。
在主程序中定义一个 LinkedQueue 类的对象 queue 和一个
LinkedStack 类的对象 stack。分别对 queue 和 stack 进行插入和删
除操作。用户输入所选择的操
作"Push","EnQueue","Pop","DeQueue","Exit"。如果为插入操
作,用户输入学生姓名,学号,执行插入操作;如果为删除操作,若不为
空打印出删除的学生信息,若栈空,打印"Stack is empty!",若队
空,打印"Queue is empty!"。若非有效操作给出提示信息"Input
error!"。用户输入"Exit",程序退出。
输入:
操作名;
学生姓名,学号。
输出: 删除的信息;提示信息。
输入样例:
Push
ZhangSan 200905
Push
LiSi 200906
EnQueue
WangWu 200907
Pop
exit
Exit
输出样例:
StudentRecord::Print 姓名: LiSi,学号: 200906
Input error!
提示:
来源: