首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
admin
2017-02-21
31
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程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;
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<<st.pop()<<";
}
int main(){
SeqStack st1;pushData(st1);
popData(st1);
cout<<end1;
LinkStack st2;pushData(st2);
popData(st2);
cout<<end1;
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/16Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的输出结果是【】。#include<iostream.h>voidfun(){staticinta=0;a+=2;cout<<
设变量a是int型,f是double型,i是float型,则表达式10+’a’+i*f值的数据类型
程序#include"iostream.h"voidmain(){inti=10;intj=5;cout<<j+i++<<endl;
当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为()。
通过使用new和delete两个运算符进行的分配为【】存储分配。
下面是复数类complex的定义,其中作为友元函数重载的运算符“--”的功能是将参数对象的实部减1,然后返回对该对象的引用;请补充完整。classcomplex{private:intreal;iht
在一个容量为32的循环队列中,若头指针front=3,尾指针rear=2,则该循环队列中共有______个元素。
下面程序有注释的语句中,错误的语句是( )。 #include <iostream> using namespace std; class A{ int a; public: void show A()
下列选项中合法的用户标识符是( )。
模板使我们可以用一个代码段指定一组相关函数(称为______)或一组相关类(称为______。
随机试题
驾驶机动车遇到跨江、河、海大桥时,要控制好方向加速通过。
我国古代医学有阴阳五行的病理学说和外因“六淫”、内囚“七情”等病因学说。这些医学理论反映的医学模式是()。
不属于生殖细胞起源的肿瘤是
线粒体内膜α-磷酸甘油脱氢酶的辅酶是
左侧胸部刺痛,固定不移,入夜尤甚,心悸不宁,舌质紫暗,脉沉涩,治疗宜选用
财政部门可以通过将会计从业资格证书注册登记管理与会计职业道德检查相结合的途径来实现对会计职业道德的监督检查。()
下列属于个人经营类贷款的是()
公安机关的人民警察发现某人携带的物品有可能是赃物的,除当场盘问外,还可以将其带至公安机关,并经公安机关的核准继续盘问,对盘问人留置时间的说法正确的是()。
某市甲区居民徐某未经批准在乙区非规划区内建房,被乙区城建局勒令拆除。徐某不予理睬,乙区城建局欲申请法院强制拆除,应向()提出申请。
Fortheemployee,beingplacedinapositionthatiscomfortableandmeetsexpectationswillmakethejoblessstressfulandall
最新回复
(
0
)