首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
admin
2020-04-07
58
问题
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
4 6 3 1 8
4 6 3 1 8
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动//“****found****”。
#include<iostream>
using namespace std;
class Intstack{ //整数栈类
public:
virtual void push(int)=0;
//入栈
virtual int pop()=0;
//出栈并返回出栈元素
virtual int topElement ( )const=0;
//返回栈顶元素,但不出栈
virtual bool isEmpty()const=0;
//判断是否栈空
};
class SeqStack:public IntStack{
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;
returyl 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<<st.pop()<<";
}
int main(){
SeqStack st1; pushData(st1);popData(st1);
cout<<endl;
LinkStack st2;pushData(st2);popData(st2);
cout<<endl;
retumR 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/Dw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下数组声明:intvalue[30];,下标值引用错误的是
以下不正确的定义浯句是
在C++中用来实现运行时多态性的是______。
模板函数的真正代码是在()时候产生。
下列关于getline()函数的描述中,不正确的是()。
程序设计语言的基本成分是数据成分、运算成分、控制成分和
程序设计语言的工程特性之一为()。
虚函数必须是类的()。
若有定义语句“intx=10;”,则表达式“x
有如下类定义:classTest{chara:constcharb:public:Test(charc){a=c;b=c;}//第1行voidf(chara)const{this.>a=a;}
随机试题
属于常染色体显性遗传的遗传性肿瘤综合征是
行甲状腺大部切除术后18h,病人出现寒战、高热、心动过速、烦躁不安,其可能发生的并发症是()
有一患者55岁,绒癌化疗1疗程后失访,2个月后因子宫穿孔、大量腹腔内出血、休克急症入院。正确的处理是:
下列哪项工作不属于住院处工作()。
围护结构的附加耗热量,应按其占基本耗热量的百分率确定,其中东、西向修正率为()
在下面有关信息加密技术的论述中,不正确的是()。
某企业只牛产一种产品。当年的税前利润为20000元。运用量本利关系对影响税前利润的各因素进行敏感分析后得出,单价的敏感系数为4,单位变动成本的敏感系数为-2.5,销售的敏感系数为1.5,固定成本的敏感系数为-0.5。下列说法中,正确的有()。
根据下面材料回答问题。以下关于该省城镇居民主要耐用消费品户均保有量的说法,能从资料中推出的是()。
如果要使用网络打印机完成本地打印任务,则要添加网络打印机,并在本机上添加()。
毛泽东强调,社会主义社会的矛盾反映在政治上可以划分为敌我矛盾和人民内部矛盾,这是两类性质完全不同的矛盾。其中属于人民内部矛盾的是()。
最新回复
(
0
)