首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1 注意:请勿修改主函数main和其他函数中的任何内容,
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1 注意:请勿修改主函数main和其他函数中的任何内容,
admin
2021-02-22
56
问题
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4 3 2 1
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include<iostream>
using namespace std;
const int Size=5;
class Stack;
class Item
{
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.top( )<<’\t’;
return0;
}
选项
答案
(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://kaotiyun.com/show/Pofp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面不属于结构化程序设计原则的是
用树形结构表示实体之间联系的模型是
数据库系统的核心是
已知将运算符’’+’’和’’*’’作为类Complex的成员函数重载,设c1和c2是类Complex的对象,则表达式c1+c2*c1等价于()。
若在表达式y/x中,’’/’’是作为成员函数重载的运算符,则该表达式还可以表示为()。
下列叙述中正确的是
有如下程序:#include<iostream>#include<iomanip>usingnamespacestd;intmain(){cout<<setw(10)<<setfill(’x’)<<s
有如下程序:#include<iostream>#include<iomanip>usingnamespacestd;intmain(){ints[]={123,234};cout<<ri
设某棵树的度为3,其中度为2、1、0的结点个数分别为3、4、15。则该树中总结点数为
软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是
随机试题
Inmattersoftaste,theartpatronandcollectorPeggyGuggenheimwas________:shewasforthestrangest,themostsurprising,
刘庆邦小说《鞋》中守明费心思做鞋的目的是()
急性乳腺炎的病因及治疗原则。
对于长期投资,最适当的融资方式是()。
当外部环境发生变化时,如果银行的经营和管理模式具有较大的弹性,能够比较容易地调整银行的经营管理模式并灵活地调整银行资源分配方式,银行潜在的战略风险就较()。
商业银行从税前利润中提取的准备金是( )。
甲企业是一家生产婴幼儿用品的企业,随着人口出生率的下降,婴幼儿市场出现了萎缩的趋势。该企业决定将原有婴幼儿洗护用品直接推向成人市场,广告宣传注重“儿童使用的洗护用品对皮肤的刺激性最小,成人使用更没有问题”的主题。这种战略在“产品一市场战略组合”矩阵中称为(
什么是段式管理?
AstheWestsleepwalksintothe1980sinwhichconfidenceandsteadfastnesswillbeincreasinglyneededanddecreasinglyfound,
Sportisnotonlyphysicallychallenging,butitcanalsobementallychallenging.Criticismfromcoaches,parents,andotherte
最新回复
(
0
)