首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
admin
2018-03-13
22
问题
请使用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()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;
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(st1);
popData(st1);
cout<
LinkStack st2;pushData(st2);
popData(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/uVAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下面程序的输出是:***********5.235.23***********请将下划线上遗漏的部分补充完整。#include<iostream>#include<iom
下列程序的输出结果是______。#include<iostream>usingnamespacestd;classTest{public:Test(){cnt++;}~Test
有以下程序#include<iostream>usingnamespacestd;staticintdays[]={31,28.31,30,31,30,31,31,30,31,30,31};
有如下程序:#include<iostream.h>usingnamespacestd;classBase{protected:inti:public:intj;
要定义一个具有5个元素的一维数组vect,并使其各元素的初值依次是30,50,-88,0和0,则下列定义语句中错误的是
有以下程序#include<iostream>inti=0;voidfun(){{staticinti=1;std::cout<<i++<<’,’;
下列程序的输出结果是#include<iostream>usingnamespacestd;intmain(){chara[]="Hello,World
执行语句序列intn:cin>>n:switch(n){case1:case2:cout<<’1’;case3:case4:cout<<’2’:break;
在下面程序的横线处填上适当的内容,使程序执行后的输出结果为1/2005。#include<iostream.h>usingnamespacestd:classDatepubl
随机试题
A、肾小管酸中毒B、弥漫增殖性肾炎C、淀粉样变D、Bartter综合征E、Liddle综合征女性,25岁,乏力、浮肿来诊;查体血压正常,化验尿pH6.0,SG1.015,Pro阴性,WBC2个/μl,RBC2个/μl;
《公路水泥混凝土路面施工技术规范》中规定,在海风、酸雨、除冰盐或硫酸盐等腐蚀环境影响范围内的混凝土路面和桥面,在使用硅酸盐水泥时,应()。
案例1995年3月20日,N钢铁公司煤气车间抢险班在煤气管道搭头施工中,由于安全措施不到位,防护不周密,造成严重的煤气中毒事故,10人中毒,1人死亡。在事故发生的前两天,即3月18日,N钢铁公司煤气车间召开生产调度会,对20000m3
在汽轮机运行中发现断叶片的故障征兆时,应按规程规定()。
1997年5月,乙从和美商场购买了一台洗衣机。同年6月,该洗衣机因质量问题给乙造成了人身伤害。1998年10月,乙向和美商场提出交涉。双方协商未果,乙于同年12月向人民法院提起诉讼。乙有权请求和美商场承担何种民事责任?()
发文机关标志必须由发文机关全称加“文件”二字组成,而不可以使用发文机关简称。()
我们感冒时,常会感到呼吸不畅,主要原因是()。
小王,小杨和小刘一起完成一项工作,小王的工作效率与小杨工作效率相同,小刘工作效率是小王和小杨工作效率之和的三分之一。假设这项工作需要三个人合作25天完成,实际上,三人工作5天后,小王去完成其他工作了,则剩余工作由小杨和小刘两个人一起完成需要多少天?(
设二阶实对称矩阵A的一个特征值为λ1=1,属于λ1的特征向量为(1,一1)T,若|A|=一2,则A=_________。
A、 B、 C、 D、 E、 D
最新回复
(
0
)