首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
admin
2017-07-04
68
问题
请使用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全国计算机二级
相关试题推荐
将E-R图转换到关系模式时,实体与实体间的联系可以表示成( )。
若变量都已正确说明,则以下程序段的输出结果是 a=2;b=3; printf(a>b?"* * *a=%d": "# # #b=%d",a,b);
在数据流图(DFD)中,带有名字的箭头表示
根据输出结果填空完成下面程序。#include<iostream.h>classTest{private:staticintval;inta;public:
数据库管理系统DBMS中用来定义模式、内模式和外模式的语言为
以下不能够读入空格字符的语句是
将7个数据进行插入排序,在最坏情况下需要比较的次数是
数据库系统阶段的数据具有较高独立性,数据独立性包括物理独立性和______两个含义。
运算符重载仍然保持其原来的优先级、________和________
下列符号中可以用作C++标识符的是()。
随机试题
对足部小肠反射区阳性反应的叙述正确的是()。
Thefoolishgiftdoesn’tknow______buteating.
疮疡内治消法中哪一法最为常用
如图6-9所示,密闭容器,左测压管内为水银,右测压管内为水,测压管上部均为绝对真空,左侧测压管读数为20cm,则右侧测压管读数为()cm。
下列关于排水处理厂联机运行要求的说法,正确的是()。
创造一个故事,将所要记忆的信息编在一起的学习策略属于()。
"Wheredidthetimego?"middle-agedandolderadultsoftenremark.Manyofusfeelthattimepassesmorequicklyasweage,ap
在建筑群布线子系统所采用的铺设方式中,能够对线缆提供最佳保护的方式是()。
一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是()。
Arepasswordspasse(过时的)?It’sstartingtoseemlikeit.Everybodyhatesthem,andnobodycanrememberalltheonesthey’vecrea
最新回复
(
0
)