首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
请打开考生文件夹下的解决方案文件proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 4 6 3 1 8
admin
2020-04-07
60
问题
请打开考生文件夹下的解决方案文件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://www.kaotiyun.com/show/Dw8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
阅读程序段,当输入数据形式为25,13,10时,正确的输出结果为______。intx,y,z;cin>>x>>y>>z;;cout<<"x+y+z=%d\n"<<x+y+z;
下列关于派生类的构造函数的叙述中,正确的是()。
下面程序输出的结果是()。#include<iostream>usingnamespacestd;intfuc(char*x);intmain(){cout<<fuc("hello")<<
以下程序的输出结果是()。main(){inta=4,b=5,c=0,d;d=!a&&!b)||!c;cout<<d<<endl;}
若有以下程序:#include<iostream>usingnamespacesstd;classA{public:A(){}A(inti){xl
在C++语言中,一个函数的定义前加上关键字【】时,该函数就声明为内联函数。
在面向对象的程序设计中,用来请求对象执行某一处理或回答某些信息的要求称为【】。
有如下类定义:classPoint{private:staticinthow_many;};______how_many=0;要初始化Point类的静态成员how_many,在下画线处应填入的内容是
在C++中,编译时的多态性是通过模板或函数【12】实现的。
在C++中既可以用于文件输入又可以用于文件输出的流类是
随机试题
行政合同与其他合同比,有以下特征()。
公证书的更正、修改
现代企业制度是适应市场经济要求的、依法规范的企业制度,一般采取( )
在医疗卫生领域,可导致市场失灵的原因有
未婚女青年,19岁。原发性闭经,第二性征发育正常,孕激素试验(-)。下一步应做的检查是
2002年7月3日,张某驾驶车辆携带所承包金矿自产30公斤黄金前往甲市销售,途中被甲市公安局截获。公安局以张某违反《金银管理条例》,涉嫌经营国家限制买卖物品为由,对张某采取刑事拘留措施,并扣押了涉案黄金。随后检察院批准对张某逮捕。2003年2月,国务院发布
依据《工伤保险条例》,工伤保险费根据()的原则,确定费率。
沵迆平原,南驰苍梧涨海,北走紫塞雁门。拖以漕渠,轴以昆岗。重江复关之陕,四会五达之庄。当昔全盛之时,车挂彗,人驾肩,廛闹扑地,歌吹沸天。孳货盐田,铲利铜山。才力雄富,士马精妍。故能侈秦法,佚周令,划崇墉,刳浚洫,图修世以休命。是以板筑雉堞之殷,井斡烽橹之勤
设f(x)在[0,+∞)上连续,非负,且以T为周期,证明:
Haveyoufinishedyourhomework?LessonOneis______thanLessonThree.
最新回复
(
0
)