首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.epp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.epp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1
admin
2019-05-29
63
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.epp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4 3 2 1
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include <ioStream>
USing namespace std;
const int Size=5;
class Stack;
Class Item
{
public:
//********found********
Item(const int&val):_______
{} //构造函数对item进行初始化
private:
int item;
Item * next;
friend clasS Stack;
};
class Stack
{
public:
Stack():top(NULL){}
~Stack();
int Pop();
void Push(const int&);
private:
Item * top;
};
Stack∷~Stack()
{
Item * P=top,*q;
while(P!=NULL)
{
q=P->next;
//********found********
_______;//释放P所指向的
节点
p=q;
}
}
int Stack∷Pop()
{
Item * temp;
int ret;
//********found********
_______;//使temp指向栈顶节点
ret=top->item;
top:top->next;
delete temp;
return ret;
}
void Stack∷Push(const int&val)
{
Item* temp=new Item(val);
//********found********_______;
//使新节点的next指针指向栈顶数据
top=temp;
}
int main()
{
Stack s;
for(int i=1;i<Size;i++)
s.Push(i);
cout <<"The element of stack are:";
for(i=1;i<Size;i++)
cout<<s.Pop()<<’t’;
return 0;
}
选项
答案
(1)item(val) (2)delete[]p (3)temp=top (4)temp->next=top
解析
(1)主要考查构造函数,对私有成员进行初始化,即item(val)。
(2)主要考查使用delete语句释放指针,一般格式为:delete[]+指针。
(3)指向栈顶节点的是top指针,要使temp指向栈顶节点,故使用语句temp=top;。
(4)指向栈顶节点的是top指针,要使新节点的next指针指向栈顶数据,故使用语句temp->next=top:o
转载请注明原文地址:https://www.kaotiyun.com/show/968p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
A、 B、 C、 D、 A本段程序实现从键盘接收一段字符串,并计算字符串的长度,cin输入流对象会将空白符、回车符、tab键作为终止标志,所以输入Ahcdefgabcd得到的字符串长度为7。
A、 B、 C、 D、 C在数据字典编制过程中,常使用定义方式描述数据结构。
A、 B、 C、 D、 B本题考查数据库的关系运算。两个关系的并运算是指将第一个关系的元组加到第二个关系中,生成新的关系。因此,并运算不改变关系表中的属性个数,也不能减少元组个数。两个关系的交运算是包含同时出
ABBA此题考查的是类的构造与析构。建立类的对象时,构造函数的执行顺序如下:执行基类的构造函数,调用顺序按照各个基类被继承时声明的顺序(自左向右)->执行成员对象的构造函数,调用顺序按照各个成员对象在类中声明的顺序->执行自身的构造函数。析构顺序与之相反。
A、 B、 C、 D、 D在线性链表中,各元素在存储空间中的位置是任意的,各元素的顺序也是任意的,依靠指针来实现数据元素的前后件关系。
有如下定义:classMA{intvalue;public:MA(intn=0):value(n){}};MA*ta,tb;其中MA类的对象名标识符是_____
A、 B、 C、 D、 Dc++语言中析构函数为符号“~”加类名,且析构函数没有返回值和参数,故前不加void关键字。所以正确的形式应该是~Myclass()。
随机试题
20世纪中国考古学最伟大的发现包括()
下列疾病中,属于肿瘤的是
诊断为流行性出血热的患者,病程第6天尿量80ml/d,血压186/110mmHg,脉洪大,面浮肿,体表静脉充盈,双肺底有散在湿啰音。此时在治疗上应采取下列哪组措施为好
普通硅酸盐水泥的强度等级分为()。
目前,我国采用的利润表的结构主要形式为()。【2005年考试真题】
现代组合投资理论认为,有效边界与投资者的无差异曲线的切点所代表的组合是该投资者的()。
在计算企业所得税应纳税所得额时,下列表述中,正确的有()。
法律与阶级斗争的关系是()。
Notonlytheprofessionalsbutalsotheamateurswill______fromthenewtrainingfacilities.
互联网跨文化冲突的起因和对策。(复旦大学,2009年)
最新回复
(
0
)