首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
admin
2021-06-10
25
问题
请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中有整数栈类IntList、顺序栈类SeqList和链接栈类LinkList的定义。请在程序中的横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:
4 6 3 1 8
4 6 3 1 8
注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动//“****found****”。
1 #include
2 using namespace std;
3 class IntStack{//整数栈类
4 public:
5 virtual void push(int)=0;//入栈
6 virtual int pop()=0;
7 //出栈并返回出栈元素
8 virtual int topElement()const=0 ;
9 //返回栈顶元素,但不出栈
10 virtual bool isEmpty()const=0;
11 //判断是否栈空
12 };,
13 class SeqStack:public IntStack{
14 int data[100]; //存放栈元素的数组
15 int top; //栈顶元素的下标
16 public:
17 //**********found**********
18 SeqStack():______{}//把top初始化为-1表示栈空
19 void push(int n){data[++top]=
20 n;}
21 //**********found**********
22 int pop(){return_______;}
23 int topElement()const{return data[top];}
24 bool isEmpty()const{return top=-1;}
25 };
26 struct Node{
27 int data;
28 Node*next;
29 };
30 class LinkStack:public IntStack{
31 Node*top;
32 public:
33 //**********found**********
34 LinkStack():_____{}//把top初始化为NULL表示栈空
35 void push(int n){
36 Node*p=new Node;
37 p->data=n;
38 //**********found**********
39 ______;
40 top=p;
41 }
42 int pop(){
43 int d=top->data;;
44 top=top->next;
45 return d;
46 }
47 int topElement()const{return top->data;}
48 bool isEmpty()const{return top==NULL;}
49 };
50 void pushData(IntStack&st){
51 st.push(8);
52 st.push(1);
53 st.push(3);
54 st.push(6);
55 st.push(4);
56 }
57 void popData(IntStack&st){
58 while(!st.isEmpty()}
59 cout<
60 }
61 int main(){
62 SeqStack st1;pushData(st1);pop-Data(st1);
63 cout<
64 LinkStack st2;pushData(st2);pop-Data(St2);
65 cout<
66 return 0;
67 }
选项
答案
(1)top(-1) (2)data[top-] (3)top(NULL) (4)p->next=top
解析
(1)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为-1表示栈空,即要把top赋值为-1即可。
(2)主要考查考生对纯虚函数的掌握情况,先看纯虚函数在基类的注释:出栈并返回出栈元素。要返回栈顶元素可以通过data[top]得到,出栈同时要使得top往下移动,即top--。
(3)主要考查考生对构造函数的掌握情况,先看语句注释:把top初始化为NULL表示栈空,因此使用成员列表初始化直接把top赋值为NULL即可。
(4)主要考查考生对栈的掌握,push为人栈函数,top指向栈顶元素,因此新添加的指针的next要指向top,即p->next=top;。
转载请注明原文地址:https://jikaoti.com/ti/CVh0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有下列程序:#include#defineN4voidfun(inta[]EN],intb[]){inti;for(i=0;i<N,i++)b[i]=a[i][i];}
下列关于运算符函数的叙述中,错误的是()。
有如下类定义:classPoint{intxx,yy;public:Point():xx(0),yy(0){}Point(intx,inty=0):xx(x),yy(y){}};
使用VC6打开考生文件夹下的源程序文件modi3.cpp,其中定义了用于表示日期的类Date,但类Date的定义并不完整,按要求完成下列操作,将类的定义补充完整。(1)定义私有成员变量year、month、day,分别表示年、月、日,类型为int
下列有关指针的用法中,错误的是()。
使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,完成空出部分程序。函数sum(intA[NUM][NUM],intn)实现的功能是计算矩阵中所有非质数数字的和。提示:函数isPrime(intn)的功能是判定当前数字
下面叙述中正确的是
数据库管理系统是()。
模板对类型的参数化提供了很好的支持,因此()。
随机试题
男性,30岁,因一周来浮肿少尿,血压120/80mmHg,尿镜检查无红细胞,实验检查:尿蛋白+++,尿中管型,24小时尿蛋白定量>3.5g,白蛋白28g/L,24小时尿蛋白定量为8g。此时最有诊断意义的检查是()
你正参与2名救护者进行的心肺复苏术,你在患者头端,当你开放此无意识者气道时,发现他呼吸不充分,最初,你应该给他通气次数是
斑蝥的功能是
下列属于工程承包合同主要内容的是()。
以前我们衡量教育成功的标准是将有问题的学生教得全都懂了,没有问题了,新课程的实施把培养学生的问题意识和解决问题的能力提到了前所未有的高度,明确要求教师在教学过程中要注意引导学生质疑调查和探究,联系教育教学实践,请你谈谈教师应如何帮助学生提高解决问题的能力。
以信息或知识为基础的权力属于()。
Sowhatarebooksgoodfor?Mybestansweristhatbooksproduceknowledgebyencasingit.Bookstakeideasandsetthemdown,t
中国各民主党派是阶级联盟性质的政党,其形成时的社会基础主要是
Aftertakingabriefhiatustoweathertherecession,aninvasionofBritainbysomeofAmerica’sbest-knownretailbrands—inclu
我的藏书都像是我的朋友,而且是密友。我虽然对它们并不是每一本都认识,它们中的每一本却都认识我。我每一走进我的书斋,书籍们立即活跃起来,我仿佛能听到它们向我问好的声音,我仿佛能看到它们向我招手的情景,倘若有人问我,书籍的嘴在什么地方?而手又在什么地方呢?我只
最新回复
(
0
)