首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8 4 6 3 1
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8 4 6 3 1
admin
2018-07-06
77
问题
请打开考生文件夹下的解决方案文件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;
//返回栈顶元素,但不出栈
virtualbool~sEmpty( )const=0;
//判断是否栈空
};
class SeqStack:public TntStack{
intdata[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{returntop==NULL;}
};
void pushData(IntStack&st){
st.push(8);
st.push(1);
st.push(3);
st.push(6);
st.push(4);
}
void popData(IntStackst){
while(!st.isEmpty( ))
cout<<st.pop( )<<’ ’;
}
int main( ){
SeqStack Stl;pushData(St1);popData(st1);
cout<<endl;
LinkStack st2;pushData(st2);popData(st2);
cout<<endl:
return0;
}
选项
答案
(1)top(-1) (2)datal[top--] (3)top(NULL) (4)p->next=top
解析
(1)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为-1表示栈空,即要把top赋值为-1即可。
(2)主要考查考生对纯虚函数的掌握情况,先看纯虚函数在基类的注释:出栈并返回出栈元素。要返回栈顶元素可以通过ciata[top]得到,出栈同时要使top得往下移动,即top--。
(3)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为NULL表示栈空,因此使用成员列表初始化直接把top赋值为NULL即可。
(4)主要考查考生对栈的掌握,push为入栈函数,top指向栈顶元素,因此新添加的指针的next要指向top,即p->next=top;。
转载请注明原文地址:https://kaotiyun.com/show/tAAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
结构化程序设计主要强调的是()。
以下for语句中不是死循环的是()。
在下面程序的画线处填上适当的内容,使程序执行后的输出结果为ABCD。#include<iostream>usingnamespacestd;classA{public:A(){cout<<’A’;}
______的任务是诊断和改正程序中的错误
假定用户没有给一个名为MyClass的类定义析构函数,则系统为其定义的默认析构函数首部形式为______。
软件是程序、数据和______的集合。
有如下程序:#include<iostream>usingnamespacestd;classAA{intn;public:AA(intk):n(k){}
有如下函数模板定义:template<classT>Tfunc(Tx,Ty){returnx*x+y*y;}在下列对func的调用中,错误的是()。
一个在基类中说明的虚函数,它在该基类中没有定义,但要求任何派生类都必须定义自己的版本,此虚函数又称为()。
在文件操作中,代表以追加方式打开文件的模式是
随机试题
位于气管颈段前方的肌肉是
膀胱的贮尿和排尿由何脏功能控制
A、PVB、ADRC、DDDD、DUIE、GCP药物利用指数
A、【适应症】B、【注意事项】C、【药物相互作用】D、【不良反应】E、【禁忌】;根据《化学药品和治疗用生物制品说明书规范细则》需要慎用该药品(如肝、肾功能问题)的内容应列在
背景某高速公路N合同段路基工程施工,工期18个月,其中K23+200~K32+200路段以填方为主,合同段附近地表土主要是高液限黏土(液限值在38~49之间),在较远地带分布有膨胀土、沼泽土、盐渍土、有机土、粉土、砂性土等。出于控制造价的考虑,业主
在债券的票面价值中需要规定的因素有()。Ⅰ.票面价值的币种Ⅱ.资金使用方向Ⅲ.债券的票面金额Ⅳ.债券变现能力
下列案件中,应由中级人民法院管辖的第一审行政案件有()。
和俗语“一场秋雨,一场寒”有关的天气系统是()。
资本主义生产是为了获得利润,因此,不同部门之间如果利润率不同,资本家之间就会展开激烈的竞争,使资本从利润率低的部门转向利润率高的部门,从而导致利润率趋于平均化,不同部门的资本家按照等量资本获得等量利润的原则来瓜分剩余价值。按照平均利润率来计算和获得的利润,
【B1】【B7】
最新回复
(
0
)