[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc

上传人:progressking105 文档编号:497200 上传时间:2018-11-28 格式:DOC 页数:8 大小:37KB
下载 相关 举报
[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc_第1页
第1页 / 共8页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc_第2页
第2页 / 共8页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc_第3页
第3页 / 共8页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc_第4页
第4页 / 共8页
[计算机类试卷]国家二级C++机试(操作题)模拟试卷140及答案与解析.doc_第5页
第5页 / 共8页
点击查看更多>>
资源描述

1、国家二级 C+机试(操作题)模拟试卷 140及答案与解析 一、基本操作题 1 请使用 VC6或使用【答题】菜单打开考生文件夹 proj1下的工程 proj1,其中有点类 Point和线段类 Line和主函数 main的定义,程序中位于每个 “ERROR*found*”之后的一行语句有错误,请加以改正。改正后程序的输出应为: p1=(8, 4)p2=(3, 5) 注意:只修改两个 “ ERROR*found*”下的那一行,不要改动程序中的其他内容。 #include #include using namespace std; class Point double x, y; public: Po

2、int(double x=0 0, double y=0 0) ERROR*found* X=x; Y=y; ) double getX()constreturn x; ) double getY()constreturn y; ) ERROR*found* void show()constcout using namespace std; class IntStack 整数栈类 public: virtual void push(int)=0;入栈 virtual int pop()=0; 出栈并返回出栈元素 virtual int topElement()const=0, 返回栈顶元素,但

3、不出栈 virtual bool isEmpty()const=0; 判断是否栈空 ; class SeqStack: public IntStack int data100; 存放栈元素的数组 int top; 栈顶元素的下标 public: *found* SeqStack(): )把 top希始化为一 1表示栈空 void push(int n)data+top=n; ) *found* int pop()return; ) int topElement()constreturn dat一 top; ) bool isEmpty()constreturn top一一 1; ; struc

4、t Node int data; Node*next, ; class LinkStack: public IntStack Node*top; public: *found* LinkStack(): ) 把 to初始化为 NULL表示栈空 void push(int n) Node*P=new Node; P一 data=n; * found* _; top=P; int pop() int d=top一 data; top=top一 next; return d; int topElement()constreturn to一 data; bool isEmpty()constretur

5、n top=NULL; ; void pushData(IntStack&st) st push(8); st push(1); st push(3); st push(6); st push(4); void popData(IntStack&st) while(!st isEmpty() cout using namespace std; const int Max=1 0 0; class IntSet public: IntSet() 构造一个空集合 end=一 1; IntSet(int a, int size)构造一个包含数组 a中 size个元素的集合 if(size=Max)

6、end=Max一 1; else end=size一 1; for(int i=0; ix=x, this一 y=y; (2)void show()consttoutnext=top 【试题解析】 本题考查的是 IntStack类及其派生类 SeqStack类和 IJnk Stack类,其中涉及纯虚函数、数组、构造函数和动态数组。本题对栈的知识要求很高,栈的特点是先进后出,后进先出。 【解题思路】 (1)主要考查考生对构造函数的掌握情况,先看语句注释:把 top初始化为一 1表示栈空,即要把 top赋值为一 1即可。 (2)主要考查考生对纯虚函数的掌握情况,先看纯虚函数在基类的注释:出栈并返回

7、出栈元素。要返回栈顶元素可以通过 datatop得到,出栈同时要使得 top往下移动,即 top一一。 (3)主要考查考生对构造函数的掌握情况,先看语句注释:把 top初始化为 NULL表示栈空,因此使用成员列表初始化直接把 top赋值为 NULL即可。 (4)主要考查考生对栈的掌握, push为入栈函数, top指向栈顶元素,因此新添加的指针的 next要指向 top,即 p一 next=top;。 三、综合应用题 3 【正确答案】 for(int i=0 ; i=Max) end=Max一 1; else end=size一 1; for(int i=0; i: end; i+) elementi=ai; 可知数组 element用来装载集合, end表示数组长度,因此调用函数 IsMemberOf来判断 set中的元素是否存在于集合中,如果存在则放入数组 a中。 【解题宝典】 主要考查考生对数组的掌握,集合可以用数组来实现,交集就是将两个数组中相等的元素提取出来放入一个新建立的数组。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1