首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4321 注意:请勿修改主函数main
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4321 注意:请勿修改主函数main
admin
2016-06-12
27
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4321
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
using namespace std;
const int Size=5;
class Stack;
class Item
f
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
S.Push(i);
cout<<“The element of stack are:”;
for(i=1;i
cout<
return 0;
}
选项
答案
(1)it:em(val) (2)delete[]p (3)temp=top (4)temp一>next=top
解析
本题考查堆栈类Stack类、Item类、构造函数、析构函数、成员函数和函数调用。堆栈类的节点一般使用指针表示,也就会考查到指针的相关知识点,要注意释放指针应使用delete[]语句。
【解题思路】
(1)主要考查构造函数,对私有成员进行初始化,即item(val)。
(2)主要考查使用delete语句释放指针,一般格式为:delete[]+指针。
(3)指向栈顶节点的是top指针,要使temp指向栈顶节点,故使用语句temp=top;。
(4)指向栈顶节点的是top指针,要使新节点的next指针指向栈顶数据,故使用语句temp一>next=top;。
【解题宝典】
本题涉及堆栈类,栈是先进后出,后进先出的存储结构。对于此类问题指针的使用是个难点,要记住栈中指向栈顶节点的是top指针,添加数据时要往栈顶添加。
转载请注明原文地址:https://kaotiyun.com/show/ZYNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
长度为n的顺序存储线性表中,当在任何位置上插入一个元素概率都相等时,插入一个元素所需移动元素的平均个数为【】。
在C++语言中,不合法的实型数据的是
关于C++语言与C语言关系描述中错误的是
友元类的所有成员函数都是另一个类的【】。
以下程序的输出结果是 #include<iostream.h> voidmain() {inta=21,b=11; cout<<--a+b;}
设以下变量均为int类型,则值不等于7的表达式是
有以下程序:#include<iostream>#include<string>usingnamespacestd;classY;classX{private:intx;
数据管理技术的发展是与计算机技术及其应用的发展联系在一起的,经历了由低级到高级的发展过程。分布式数据库、面向对象数据库等新型数据库是属于()。
假定MyClass为一个类,那么下列的函数说明中,()为该类的析构函数。
若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是
随机试题
由心房除极所产生的心电图波型是()
利小便而实大便的理论依据是
固定节拍流水施工是一种()的流水施工方式。
地质构造基本形态有()。
下列标志不得作为商标使用的是()。[2013年5月二级真题]
在以下社会服务机构中,属于群团组织的是()。
对于不同平均能力水平的团体,题目的()会影响信度系数。
15世纪以前欧洲的绘画主要采用()。
目标游离评价模式主张在教育评价中应()。
ForadevelopingcountrylikeIndiawhoseecologicalandsocio-economicsystemsarealreadyunderpressurefromrapidurbaniza
最新回复
(
0
)