首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请打开考生文件夹下的解决方案文件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
24
问题
请打开考生文件夹下的解决方案文件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全国计算机二级
相关试题推荐
若已定义了类Vehicle,则下列派生类定义中,错误的是()。
有如下程序:#includeusingnamespacestd;voidf1(int&x,int&y){intz=x+y;x=y;y=z;}voidf2(intx,i
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使得程序正常运行,并使程序输出的结果为:sizeof(strl)=5sizeof(str2)=10sizeof(str3)=l
在软件开发中,需求分析阶段产生的主要文档是()。
下列关于虚函数的说明中,正确的是()。
下列关于栈叙述正确的是()。
如下函数模板:templateTsquare(Tx){returnx*x;}其中T是()。
下列关于栈的叙述正确的是( )。
下列有关内联函数的叙述中,正确的是()。
在C++语言中函数返回值的类型是由()决定的。
随机试题
关于Java中的Map接口,下列说法正确的是()。
某市建设行政管理部门在安全大检查中,因某建筑公司施工现场存在安全问题,对其作出停工整改的决定,如该决定有下列()情形之一的,人民法院可判决撤销或部分撤销。
在通关申报环节,海关认为必要时,需查阅或收取的预备性单证是()。
根据个案工作的过程,可以把个案工作的技巧分为()不同方面。
教育的内容和手段受________的制约。
成人要注意保护幼儿的耳朵以防生冻疮,是因为幼儿的()
某村村民经过集体投票民主选举村干部,5位村干部候选人中得票最高者将当选。经统计,本次选举有效选票一共395票,且当选者的得票数比其他4位候选人的平均得票数要多60票,则这名当选者一共获得()票。
单位新上了一套办公软件,但使用过程中出现了一些问题,影响了效率,你作为该软件上马的负责人,准备如何处理?
TheAmericanexpression"burningyourbridges’meansactinginsuchawaywhichyoudestroyanychanceofturningbackorchangi
Ifthetechnologicalrevolutioncontinuestohaveitseffects,therewillbefewerandfewerjobsavailable,particularlytosch
最新回复
(
0
)