首页 > 全部 > 二级C++ > 国家二级C++机试(操作题)模拟试卷490

国家二级C++机试(操作题)模拟试卷490

本单篇文档共5472字,内容预览3600字,预览为有答案版,源文件无水印,下载后包含无答案空白卷版和有答案版,同时也有计算机类NCRE全国计算机二级整科真题模拟题,讲义课件,思维导图,易错高频题等下载。
二级C++ 章节练习 5405人下载
价格: 0.80 原价:¥7.00
收藏

国家二级C++机试(操作题)模拟试卷490

基本操作题

1.请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,该工程中包含程序文件main.cpp,其中有类Door(“门”)和主函数main的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应为:

打开503号门…门是锁着的,打不开。

打开503号门的锁…锁开了。

打开503号门…门打开了。

打开503号门…门是开着的,无须再开门。

锁上503号门…先关门…门锁上了。

注意:只修改每个“//ERROR****found****”下的那一行,不要改动程序中的其他内容。

#inClude

using namespace std;

class Door{

int num; //门号

bool closed; //true表示门关着

bool locked; //true表示门锁着

public:

Door(int num){

//ERROR********found********

num=this->num;

closed=locked=true;

}

bool isClosed()const{return

closed;}

//门关着时返回true,否则返回false

bool isOpened()const{return !closed;}

//门开着时返回true,否则返回false

bool isLocked()Const{return locked;}

//门锁着时返回true,否则返回false

bool isUnlocked()COnSt{return!locked;}

//门未锁时返回true,否则返回false

void open(){ //开门

cout<<endl<<\\

(1)this_>num=num;

(2)if(!closed)

(3)void lock(){

解析:(1)主要考查考生对this指针的掌握,在构造函数中this指针指向的是当前类,因此要给num赋值使用语句this->num=num;完成。

(2)主要考查考生对if语句的掌握,先看类的私有成员中关于closed的定义:bool closed;//true表示门关着。再看下一条语句:cout<<\\

简单应用题

2.使用Ve6打开考生文件夹proj2下的工程proj2。其中在编辑窗口内显示的主程序文件中定义有类XBase和XDerived,以及主函数main。程序文本中位于每行”//************found************下面的一行内有一处或多处下划线标记,请在每个下划线标记处填写合适的内容,并删除掉下划线标记。经修改后运行程序,得到的输出结果为:s=25

#include

using namespace std;

Class XBase

{

private:

int mem1,mem2;

public:

//*****found*****

XBase(int m1=0,int m2=0):mem1(m1),_________()

//*****found*****

virtual int__________

};

//*****found*****

class XDerived:_________

{

private:

int mem3;

public:

XDerived():XBase(),mem3(0){}

//*****found*****

XDerived(int m1,int m2,

int m3):__________{}

int sum(){return XBase::

slim()+mem3;}

};

void main()(

XDerived b(3,4,5);

XBase a(6,7),*pb=&b;

int s=pb->SLIm()+a.sum();

cout<<\\

(1)mem2(m2)

(2)sum(){return mem1+mem2;}

(3)public XBase

(4)XBase(m1,m2),mew3(m3)

解析:(1)题意要求使用m1和m2初始化数据成员mem1和mem2,同mem1的初始化一样,需要在成员初始化列表中完成mem2的初始化。

(2)sum函数的定义需要返回mem1和mem2之和。

(3)XDerived公有继承XBase类,在继承列表中使用public。

(4)在成员初始化列表中初始化基类成员时,需要调用基类的构造函数,初始化mem3时,可以直接初始化。

综合应用题

3.请使用VC6或使用【答题】菜单打开考生文件夹proj3下的工程文件proj3,此工程中包含一个源程序文件proj3.cpp,其中定义了用于表示平面坐标系中的点的类MyPoint和表示矩形的类MyRectangle;程序应当显示:

(0,2)(2,2)(2,0)(0,0)4

但程序中有缺失部分,请按照以下提示,把缺失部分补充完整:

(1)在“//**1** ****found****”的下方是构造函数的定义,它用参数提供的左上角和右下角的坐标对up_left和down_right进行初始化。

(2)在“//**2** ****found****”的下方是成员函数getDownLeft的定义中的一条语句。函数getDownLeft返回用MyPoint对象表示的矩形的左下角。

(3)在“//**3** ****found****”的下方是成员函数area的定义,它返回矩形的面积。

注意:只在指定位置编写适当代码,不要改动程序中的其他内容,也不要删除或移动“****found****”。

//proj3.cpp

#include

using namespace std;

class MyPoint{//表示平面坐标系中的点的类

double x;

double y;

public:

MyPoint(double x,double y)

{this->x=x;this->y=y;)

double getX()const{return x;}

double getY()const{return y;}

void show()const{cout<<’(’<<x<<’,’

本文档预览:3600字符,共5472字符,源文件无水印,下载后包含无答案版和有答案版,查看完整word版点下载

剩余未完,查看全文
收藏
国家二级C++机试(操作题)模拟试卷490

推荐资源

客服

扫码添加客服微信

热线

官方客服

如遇问题,请联系客服为您解决

电话客服:

客服微信:pujinet

工作时间:9:00-18:00,节假日休息

公众号

扫码关注微信公众号