首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1
admin
2017-07-05
68
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4 3 2 1
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include<iostream>
us ing namespace std;
const int Size=5;
class Stack;
class Itern
{
public:
//**********found**********
Item(const int&val):_____________;)
//构造函数 对item进行初始化
private:
int item;
Item*next;
friend class Stack;
};
class Stack
{
public:
Stack():top(NULL){}
一Stack();
int Pop();
void Push(const int&);
private:
Item*top;
};
Stack::一Stack()
{
Item*P=top,*q;
while(P!=NULL)
{
q=P一>next ;
//********found********
__________; //释放P所指向的节点
p=q;
}
}
int Stack::Pop()
{
Item*temp;
int ret;
//********found********
___________; //使temp指向栈顶节点
ret=top一>item;
top=top一>next;
delete temp;
return ret;
}
void Stack::Push(const int&val)
{
Item*temp=new Item(val);
//********found********
__________;
//使新节点的next指针指向栈顶数据
top=temp;
}
int main()
{
Stack s;
for(int i=1;i<Size;i++)
s.Push(i);
cout<<”The element of stack are:”;
for(i=1;i<Size;i++)
cout<<s.Pop()<<’\t’;
return 0 ;
}
选项
答案
(1)item(val) (2)delete[]p (3)temp=top (4)temp一>next=top
解析
(1)主要考查构造函数,对私有成员进行初始化,即item(val)。
(2)主要考查使用delete语句释放指针,一般格式为:delete[]+指针。
(3)指向栈顶节点的是top指针,要使temp指向栈顶节点,故使用语句temp=top;。
(4)指向栈顶节点的是top指针,要使新节点的next指针指向栈顶数据,故使用语句temp一>next=top;。
转载请注明原文地址:https://www.kaotiyun.com/show/MLAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序编译时发现pb->f(10);语句出现错误,其原因是【 】。#include<iostream.h>classBase{public:voidf(intx){cout<<"Base:"<<
执行语句序列charstrl[10]="ABCD",str2[10]="XYZxyz";for(inti=0;strl[i]=str2[i];i++)后,数组str1中的字符是XYZxyz,数组str2中的字符串是【 】。
下面程序的运行结果是( )。 #include <iostream> using namespace std; template <class T> class A{ T x,y; public:
下面程序的运行结果为( )。 class A{ static int n; public: A(){n=1;} A(int num){n=num;} vo
关于this指针的说法错误的是( )。
下面关于虚函数的描述中,正确的是()。
已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是
下面关于对象概念的描述中错误的是()。
对于重载的运算符>>,它是一个()。
重新定义标识符的作用域规定是外层变量被隐藏,______变量是可见的。
随机试题
I’mforthesuggestionthataspecialboard_________toexaminetheproblem.
下面叙述中不正确的是
造成儿童青少年营养不良的膳食原因是
人身保险合同中由投保人指定的,在保险事故发生后享有保险赔偿与保险金请求权的人是()。
行政法规的制定主体是()
“提运单号”栏应填()。“经营单位”栏应填()。
足球场各区域界线的宽度均应从线的_______为界包括在该区域面积之内。
把感觉、经验当成第一性的观点是()。
1915年5月,阴谋复辟帝制的袁世凯接受了日本提出的严重损害中国权益的
IncollegesalmosthalfamillionstudentshavetotakethecourseofintroductoryCalculus(微积分)inanyacademicyear,andthenu
最新回复
(
0
)