首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程包含有一个源程序文件proj2.cpp,其中定义了Stack类和ArrayStack类。 stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程包含有一个源程序文件proj2.cpp,其中定义了Stack类和ArrayStack类。 stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack
admin
2019-04-18
106
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,此工程包含有一个源程序文件proj2.cpp,其中定义了Stack类和ArrayStack类。
stack是一个用于表示数据结构“栈”的类,栈中的元素是字符型数据。Stack为抽象类,它只定义了栈的用户接口,如下所示:
公有成员函数 功能
push 入栈:在栈顶位置添加一个元素
pop 退栈:取出并返回栈顶元素
ArrayStack是Stack的派生类,它实现了Stack定义的接口。ArrayStack内部使用动态分配的字符数组作为栈元素的存储空间。数据成员maxSize表示的是栈的最大容量,top用于记录栈顶的位置。成员函数push和pop分别实现具体的入栈和退栈操作。
请在程序中的横线处填写适当的代码,然后删除横线,以实现上述功能。此程序的正确输出结果应为:
a,b,c
c,b,a
注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
using namespaee std;
class Stack{
public:
virtual void push(char c)=0;
virtual char pop()=0;
};
class ArrayStack:public Stack{
char *p;
int maxSize;
int top;
public:
ArrayStack(int s)
{
top=0;
maxSize=s;
//******** found********
p=___________;
}
~ArrayStack()
{
//********found********
___________;
}
void push(char c)
{
if(top==maxSize){
cerr<<"Overflow!\n";
return;
}
//********found********
___________;
top++:
}
char pop()
{
if(top==0){
cerr<<"Underflow!\n";
return ’\0’:
}
top--;
//********found********
___________;;
}
};
void f(Stack& sRef)
{
char ch[]={’a’,’b’,’c’};
cout<
sRef.push(ch[0]);sRef.push(ch[1]);sRef.push(ch[2]);
cout<
cout<
cout<
}
int main()
{
ArrayStack as(10);
f(as);
return 0;
}
选项
答案
(1)new char[s] (2)delete[]p (3)p[top]=c (4)return p[top]
解析
(1)主要考查的是ArrayStack类的构造函数,在函数中要为p申请s个char型空间,应使用语句p=newchar[s];。
(2)主要考查析构函数,使用delete语句释放指针,即delete[]p;。
(3)主要考查push函数,top表示栈顶元素下标,添加的数据放到栈顶,因此使用语句p[top]=c;。
(4)主要考查pop函数,输出栈顶数据,top表示栈顶元素下标,因此使用语句return p[top];。
转载请注明原文地址:https://www.kaotiyun.com/show/4pAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若要访问指针变量q所指向的数据,应使用表达式______。
下面关于this指针的说法中错误的是()。
下面有关纯虚函数的表述中正确的是()
下列程序的输出结果为:0bjectid=00biectid=1请将程序补充完整。#include<iostream>usingnamespacestd;classPoint{publ
若有函数fun(x,y),并且已经使函数指针变量p指向函数fun,则使用p调用函数fun的方法是______。
下面叙述错误的是()
有如下程序:#include<iostream>usingnamespacestd;classTestClass1{public:TestClass1(){cout<<"TestClass1";}
下列关于this指针的叙述中,正确的是()
随机试题
营养不良实验室检查常见
女,55岁。发现右乳腺肿物1周。查右乳外上象限肿物1.5cm×1.0cm,质硬,活动度小。该患者最可能的诊断是()
A.去甲肾上腺索B.肾上腺素C.乙酰胆碱D.多巴胺副交感神经节后纤维的递质是
患者,男,33岁。自述胸闷、心悸,时有胸痛。体检:心界不大,心尖部第一心音不弱,可闻第四心音,胸骨左缘3、4肋间可闻收缩期粗糙喷射性杂音。心电图示:V3~V4T波倒置。患者确立诊断后,下列哪种药物最适宜
英国的法院组织中哪个是英国本士民刑案件的最高审级?()
“备案号”栏:()。“数量及单位”栏:()。
甲公司为上市公司,2017年至2018年发生的相关交易或事项如下:资料一:2017年7月30日,甲公司就应收A公司账款9000万元与A公司签订债务重组合同。合同规定:A公司以其拥有的一栋对外出租的写字楼及一项其他权益工具投资偿债,A公司写字楼和其他权益
下列关于企业整体经济价值说法中,不正确的是()。
对于雾霾天气,人们深受其害。殊不知,精神上也存在雾霾现象,如果不及时祛除,就会使心灵压抑灰暗,精神萎靡不振,思想浑浑噩噩,危害一点儿都不比雾霾天气小。现代社会,节奏快,压力大,矛盾多。这种精神的雾霾对个人生活和事业的害处多多。如何调适心情,驱散雾霾?一剂良
以下是QESuitewebVersion1.0用户手册的相关内容,请仔细阅读并按要求回答问题。(1)下表是测试用的规格说明,请阐述测试用例的定义及相关内容。
最新回复
(
0
)