首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2
admin
2021-02-22
32
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4 3 2 1
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
//proj2.cpp
#include
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
s.Push(i);
cout<<"The element of stackare:";
for(i=1;i
cout<
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;。
转载请注明原文地址:https://kaotiyun.com/show/S1fp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有类定义如下:classType{public:Type(inti=0);Typeoperator-(int);friendTypeoperator+(Type,Type);privat
有如下程序:#includeusingnamespacestd;classONE{intc;public:ONE():c(0){cout
有如下程序;#includeusingnamespacestd;classBase{public:voidoutput(){cout
有如下程序:#includeusingnamespacestd;classA{public:A0{cout
在结构化程序设计中,模块划分的原则是
以下程序的输出结果是()。main(){inta=4,b=5,c=0,d;d=!a&&!b‖!C;cout
若执行以下程序时从键盘上输入9,则输出结果是()。main(){intn;cin>>n;if(n++
下面关于构造函数和析构函数的描述,错误的是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数convert(char*strOct)的功能是将八进制转换为十进制。提示:要每一位转换,然后把转换后得到的数累加起来即可。注意:不
对下列二叉树进行前序遍历的结果是
随机试题
下列属于反思战争和悲剧命运的诗篇的是()
新民主主义的文化是()。
女孩,3岁。反复肺炎5次。查体:身体瘦弱。胸骨左缘第3~4肋间闻及4/6级全收缩期杂音,传导广泛,伴震颤,P2亢进。最符合患儿目前情况的血流动力学改变是
张某和李某采用书面形式签订一份买卖合同,双方在甲地谈妥合同的主要条款,张某于乙地在合同上签字,李某于丙地在合同上摁了手印,合同在丁地履行。关于该合同签订地,下列哪一选项是正确的?(2010/3/11)
相似、变形与()是造型中取得多样性与秩序的重要手法,是创造形式美的手段。
请就“木桶原理”谈谈你的看法。
“搬运夫和哲学家之间的原始差别要比家犬和猎犬之间的差别小得多。他们之间的鸿沟是分工掘成的。”这两句话意在强调()
设向量组α1=(1,1,1,3)T,α2=(一1,一3,5,1)T,α3=(3,2,一1,n+2)T.α4=(一2,一6,10,α)T. (1)α为何值时,该向量组线性无关?并在此时将向量α=(4,1,6,10)T用α1,α2,α3,α4线性表出;
当x→0时,(1-cosx)ln(1+x2)是比xsinxn高阶的无穷小,而xsinxn是比ex2-1高阶的无穷小,则正整数n=________.
A、 B、 C、 B
最新回复
(
0
)