首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2 下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 46
请使用VC6或使用【答题】菜单打开考生文件夹proj2 下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为: 46
admin
2019-04-18
43
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2 下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
46318
46318
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动//“****found****”。
#include
usingnamespacestd;
classIntStack{//整数栈类
public:
virtualvoidpush(int)=0;//入栈
virtualintpop()=0;
//出栈并返回出栈元素
virtualinttopElement()const=0;
//返回栈顶元素,但不出栈
virtualboolisEmpty()const=0;
//判断是否栈空
};
classSeqStack:publicIntStack{
intdata[100];//存放栈元素的数组
inttop;//栈顶元素的下标
public:
//**********found**********
SeqStack():________{)//把top初始化为-1表示栈空
voidpush(intn){data[++top]=
n;}
//**********found**********
intpop(){return________;)
inttopElement()const{returndata
[top];}
boolisEmpty()const{returntop=-1;)
};
structNode{
intdata;
Node*next;
};
classLinkStack:publicIntStack{
Node*top;
public:
//**********found**********
LinkStack():________()//把top初始化为NULL表示栈空
voidpush(intn){
Node*P=newNode;
P->data=n;
//**********found**********
________;
top=P;
}
intpop(){
intd=top->data;;
top=top->next;
returnd;
}
inttopElement()const(returntop->data;}
boolisEmpty()const{returntop。。
NULL;}
};
voidpushData(IntStack&st){
st.push(8);
st.push(1);
st.push(3);
st.push(6);
st.push(4);
}
voidpopData(IntStack&st)f
while(!st.isEmpty())
cout<
}
intmain(){
SeqStackst1;pushData(st1);popData(st1);
cout<
LinkStackst2;pushData(st2);popData(st2);
cout<
return0;
}
选项
答案
(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/JZAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列选项中不属于结构化程序设计原则的是
有如下程序:#include<iostream>usingnamespacestd;classDA{intk;public:DA(intx=1):k(X){}~DA(){co
有如下定义:classMA{intvalue:public:MA(intn=0):v;alut(n){}};MA*ta,tb:其中MA类的对象名标识符是______。
有如下程序:#include<iostream>usingname。pacestd;classAA{intn:public:AA(intk):n(k){}inget(){returnn
在表达式x+y*z中,+是作为成员函数重载的运算符,*是作为非成员函数重载的运算符。下列叙述中正确的是
有如下类声明:classFoo{intbar;};则Foo类的成员bar是
如下程序定义了“单词”类word,类中重载了<运算符,用于比较“单词”的大小,返回相应的逻辑值。程序的输出结果为:AfterSorting:HappyWelcome,请将程序补充完整。#include<iostream>#inclu
有如下循环语句:for(inti=50;i>20;i-=2)cout<<i<<",";程序运行时循环体的执行次数是______。
输出流控制中,如果没有指定对齐方式,则默认为左对齐、右填充,CSum类使“<<”运算符出栈,并将输出控制为宽度为5,cout<<setfill(’*’)<<8;执行时就打印8****,然后执行cout<<y;打印8,故答案为D。
通过运算符重载,可以改变运算符原有的
随机试题
在Excel2010中,选定如下图l单元格区域,在编辑框中输入“计算机”后,按下组合键Ctrl+Enter,则________。
能够直接与外存交换数据的是_______。
慢性肾炎治疗的主要目的是()。
婴儿秋季腹泻可导致
患者入院后,不顾病情继续坚持写论文,患者的行为属于()
在组织审计项目组讨论舞弊风险时,注册会计师认为可能讨论的内容有()。
“吉林三杰”的诗歌创作表现了吉林近代文人的忧患情怀,以说部()为代表的叙事文学则表现了吉林近代文学的爱国主义精神。
我国教育目的是以马克思主义______学说为指导思想。
•Youwillhearanintroductionofinsurance.•Asyoulisten,forquestions1--12,completethenotes,usinguptothreewordsor
WriteonANSWERSHEETTWOanoteofabout50-60wordsbasedonthefollowingsituation:Yourclassisgoingtohaveaparty
最新回复
(
0
)