首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
admin
2017-07-04
35
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
4 6 3 1 8
4 6 3 1 8
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动//“****found****”。
#include
using namespace std;
class IntStack{ //整数栈类
public:
virtual VOid push(int)=0;//入栈
virtual int pop()=0;
//出栈并返回出栈元素
virtual int topElement()const=0;
//返回栈顶元素。但不出栈
virtual bool isEmpty()oonst=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;
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 main(){
SeqStack st1; pushData(stl);pop Data(stl);
cout<
LinkStack st2;pushData(st2);pop Data(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/2LAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是 int a, b; void fun() {a=100; b=200; } main() { int a=5, b=7; fun(); cout<<a<<b<<e
数据库管理最本质的特点是实现数据的共享。为了实现数据的共享,保证数据的独立性、完整性和安全性,需要有一组软件来管理数据库中的数据,处理用户对数据库的访问,这组软件称为【 】。
下面程序段的正确输出是 int w=4,x=3,y=2,z=1; cout<<(w<x? w:z<y? z:x)<<endl;
以下不是数据库系统组成部分的是( )。
下面关于虚函数的描述中,正确的是()。
重载的流运算符函数经常定义为类的______函数。
以下各选项组中,均是C++语言关键字的组是
执行下列语句后,输出结果为cout. put(’s’);cout<<,’c’<<’a’;
友元运算符。obj1>obj2被C++编译器解释为()。
以下选项中合法的用户标识符是
随机试题
心脏无自律性的细胞是
A.变质性炎症B.浆液性炎症C.增生性炎症D.化脓性炎症E.激化性炎症病毒性肝炎属于
对拥有复杂产品的企业来说,一般决定产品结构的基本因素是()。
按照工程监理规范的要求,监理工程师对建设工程实施监理时,可采取的形式有()等。
下列各项中,不通过“其他应付款”科目核算的是()。
在评价审计结果时,如果被审计单位尚未调整的错报或漏报的汇总数超过重要性水平,注册会计师应当采取的措施包括( )。下列选项中,( )是注册会计师对重要性水平做出初步判断时应考虑的因素。
当事人订立合同,应具有()。
一般资料:求助者,女性,34岁,初中毕业,农民。案例介绍:两个月前求助者9岁的独生子因车祸去世,车祸发生前,她曾想去学校接儿子,但因故没去成,因此非常自责,求助者不能接受失去儿子的现实,脑子里经常浮现儿子的影子,夜间经常因梦到儿子而哭醒,求助者现在情绪低
在计算机上设计汽车的外形属于哪一类计算机应用领域?
AnimportantdevelopmentsinceWorldWarIIhasbeenthegrowthofpostdoctoraleducation,especiallyinthesciences.Postdocto
最新回复
(
0
)