首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1 注意:请勿修改主函
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为: The element of stack are:4 3 2 1 注意:请勿修改主函
admin
2021-09-05
33
问题
请打开考生文件夹下的解决方案文件proj2,该工程中含有一个源程序文件proj2.cpp,请将堆栈类的定义补充完整。使程序的输出结果为:
The element of stack are:4 3 2 1
注意:请勿修改主函数main和其他函数中的任何内容,只在横线处编写适当代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。
t //proj2.cpp
2 #include
3 using namespace std;
4 const int size=5 ;
5 class Stack;
6 class Item
7 {
8 public:
9 //********found********
10 Item(const int& val):___________ {}//构造函数对item进行初始化
11 private:
12 int item;
13 Item*next;
14 friend class Stack;
15 };
16 class Stack
17 {
18 public:
19 Stack():top(NULL){}
20 ~Stack();
21 int Pop();
22 void Push(const int &);
23i private:
24 Item*top;
25 };
26 Stack::~Stack()
27 {
28 Item*p=top,*q;
29 while(p!=NULL)
30 {
31 q=p一>next ;
32 //********found********
33 _____________; //释放p所指向的节点
34 p=q;
35 }
36 }
37 int Stack::Pop()
38 {
39 Item*temp ;
40 int ret;
41 //**********found**********
42 ___________; //使temp指向栈顶节点
43 ret=top->item;
44 top=top->next;
45 delete temp;
46 return ret;
47 }
48 void Stack::Push(const int&val)
49 {
50 Item*temp=new Item(val);
51 //**********found**********
52 }
//使新节点的next指针指向栈顶数据
53 top=temp;
54 )
55 int main()
56 {
57 Stack s;
58 for(int i=1;i
59 s.Push(i);
60 cout<<"The element of stack are:";
61 for(i=1;i
62 cout<
63 return 0;
64 }
选项
答案
(1)itern(val) (2)delete []p (3)temp=top (4)temp->next=top
解析
(1)主要考查构造函数,对私有成员进行初始化,即item(val)。
(2)主要考查使用ctelete语句释放指针,一般格式为:delete[]+指针。
(3)指向栈顶节点的是top指针,要使temp指向栈顶节点,故使用语句temp=top;。
(4)指向栈顶节点的是top指针,要使新节点的next指针指向栈顶数据,故使用语句temp->next=top:。
转载请注明原文地址:https://kaotiyun.com/show/Bdfp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有如下程序:#inc1ude<iostream>usingnamespacestd;c1assMyClass{public:MyClass(inti=0){cout<<1;}MyClass
下面描述中错误的是()。
有如下两个类定义:classAA{);classBB{AAvl,*v2;BBv3:int*v4;);其中有一个成员变量的定义是错误的,这个变量是()。
下列语句或语句序列中错误的是
有如下程序:#includeusingnamespacestd;classTV{public:TV(ints=41):size(s){}
由于常对象不能被更新,因此()。
在数据库设计中,将E-R图转换成关系数据模型的过程属于()。
下列关于函数模板的描述中,错误的是()。
在C++语言中函数返回值的类型是由()决定的。
如果有以下定义及初始化:inta=3,*p=&a;则由此可以推断,*p的值是()。
随机试题
十二经脉的别络从本经分出的部位是()十二经别从正经别出的部位大多是()
保险经纪从业人员在向客户推荐保险产品时,若产品的提供者与保险经纪从业人员所属的保险经纪机构之间存在关联关系,保险经纪从业人员应当( )。
我国目前对外经济战略主要包括()战略。
在赌博过程中,人们倾向认为既往事件容易影响未来事件的发生几率,这被称为“赌徒谬论”。英国科学家招募了31名大脑脑岛受伤的患者让其玩投币机,结果只有“赢”和“差点赢了”两种:同时还招募了13名大脑其他区域有损伤的患者以及16名健康人进行对比研究。研究发现,除
德国图片报(人大2013年研)
有如下程序:PrivateSubForm_Click()DimsAsInteger,pAsIntegerp=1Fori=1To4Forj=1Tois=s+jNe
A、大象有时也忘事B、大象记忆力不好C、大象不爱学习D、大象不喜欢记忆A“大象固然有时记忆力不错,但也经常忘这忘那”,所以A对。
Whattimeisitnow?
Thepatient’sprogresswasveryencouragingashecould______getoutofbedwithouthelp.
TheattitudeofmostBritaintowardsthewarinAfghanistanis______.
最新回复
(
0
)