首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件火下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
请打开考生文件火下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
admin
2021-05-06
33
问题
请打开考生文件火下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
4 6 3 1 8
4 6 3 1 8
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动//“****
found****”。
#include
using namQspace std;
class TntStack{ //整数栈类
public:
virtual void push(int)=0;
//入栈
virtual int pop()=0 ;
//出栈并返回出栈元素
virtual int topElement ( )
const=0;
//返回栈顶元素,但不出栈
virtual bool isEmpty()const
=0;
//判断是否栈空
}j
class SeqStack:public TntStack{
int data[100]; //存放栈元素的数组
int top; //栈顶元素的下标
public:
//********found********
SeqStack():_____________{}//把top初始化为-1表示栈空
void push(int n){data [++top ]=n;}
//********found********
int pop(){return____________;}
int topElement()const{return data[top];}
bool isEmpty()const{return top=-1;)
};
struct Node{
int data;
Node*next;
};
class LinkStack:public IntStack{
Node*top ;
public:
//********found********
LinkStack():____________{}
//把top初始化为NULL表示栈空
void push(int n){
Node*p=new Node;
p->data=n;
//********found********
___________;
top=p;
}
int pop(){
int d=top->data;;
top=top->next;
return d;
}
int topElement()const{return top->data;}
bool isEmpty()const{return
top==NULL;}
};
void pushData(IntStack&St){
st.push(8);
st.push(1);
st.push(3);
st.push(6);
st.push(4);
}
void popData(IntStack&St){
while(!St.isEmpty())
cout<
}
int msin(){
SeqStack st1;pushData(stl);
popData(stl);
cout<
LinkStack st2;pushData(st2);
popData(st2);
Cout<
return 0;
}
选项
答案
(1)top(-1) (2)data[top--] (3)top(NULL) (4)p->next=top
解析
(1)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为-1表示栈空,即要把top赋值为-1即可。
(2)主要考查考生对纯虚函数的掌握情况,先看纯虚函数在基类的注释:出栈并返回出栈元素。要返回栈顶元素可以通过data[top]得到,出栈同时要使得top往下移动,即top--。
(3)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为NuLL表示栈空,因此使用成员列表初始化直接把top赋值为NULL即可。
(4)主要考查考生对栈的掌握,push为入栈函数,top指向栈顶元素,因此新添加的指针的next要指向top,即p->next=top;。
转载请注明原文地址:https://kaotiyun.com/show/SUfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#includeusingnamespacestd;classTest{public:Test(){n+=2;)~Test(){n一3;)static
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示矩形的CRect类,但类CRect的定义并不完整。请按要求完成下列操作,将类CRect的定义补充完成。(1)定义私有数据成员leftPoint、topPoint、righ
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。函数convert(char*des,char*str)实现的功能是,如果字符串str里面有空格或者不可打印字符,则全部去掉,将转化后的字符串放在字符串des
使用VC6打开考生文件夹下的源程序文件modi2.cpp。请完成以下函数:intfactorial(intn):求出n的阶乘,必须使用递归调用。如果n小于1则返回0。注意:不能修改函数的其他部分。1#include<
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:150200注意:错误的语句在//******error******的下面,修改该语句即可。提示:定义Num
下列关于类模板的模板参数的叙述中,错误的是()。
公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是
一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是( )。
公司中有多个部门和多名职员,每个职员只能属于一个部门,一个部门可以有多名职员。则实体部门和职员间的联系是()。
在满足实体完整性约束的条件下()。
随机试题
与弥漫性毒性甲状腺肿病因有关的自身抗体是
B超检查不能显示下列的
洪女士,43岁,因“反复呕吐、腹泻2天”拟诊为“细菌性痢疾”收住入院。该患者应采取的隔离种类是
承包商的索赔要求成立必须同时具备()。
编制资金使用计划,确定和分解施工成本管理目标等措施属于施工成本管理的()。
国家审计人员按法定程序对某公司的账户进行检查,银行业务人员因和该公司有很好的业务关系,在审计人员检查前帮助该公司进行了资产的转移。此行为违反了《银行业从业人员职业操守》中()的规定。
全陪和地陪在旅游接待工作中处于主导地位,他们之间的合作更为重要。()
事业单位考核的主要办法是()。
南美洲有一种毒箭蛙,其皮肤能分泌出剧毒物质。人们发现它们在水族馆中生活一段时间后,就不再具有毒性,其后代也是如此。后来又发现,自然界中的毒箭蛙以热带蚁类为食,而在水族馆中没有这种昆虫滋生。由此可知()。
A、threatenedthepoliceB、tooksomehostagesC、robbedabankD、lockedhimselfinahouseD
最新回复
(
0
)