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

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

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

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

基本操作题

1.请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1。其中有线段类Line的定义。程序中位于每个“//ERROR****found****”之后的一行语句有错误,请加以改正。改正后程序的输出结果应该是:

End point 1=(1,8),End point 2=(5,2),lenth=7.2111。

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

#include

#include

using namespace std;

class Line;

double length(Line),

class Line{ //线段类

double x1,y1;//线段端点1

double x2,y2;//线段端点2

public:

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

Line(double x1,double y1,

double x2,double y2)const{

this->x1=x1;

this->y1=y1;

this->x2=x2;

this->y2=y2;

}

double qetX1()const{returnx1;}

double getY1()const{returny1;}

double qetX2()const{returnx2;}

double getY2()const{returny2;}

void show()const{

cout<<\\

(1)Line(double x1,double y1,double x2,double y2){

(2)tout<<\\

解析:(1)主要考查考生对构造函数的掌握,构造函数要给私有成员赋初始值,因此不能使用const来限制。

(2)主要考查考生对this指针的掌握,由函数length的声明double length(Line);可知,length函数的形参是Line类,在void show()const函数里,this指针指向的是当前Line类,因此可以用*this表示当前Line类。

(3)主要考查考生对成员函数的掌握,length函数是类外函数,不能直接调用类的私有成员,因此要通过成员函数取得对应的值。

简单应用题

2.请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,其中定义了Component类、Composite类和Leaf类。Component是抽象基类,Composite和Leaf是Component的公有派生类。请在横线处填写适当的代码并删除横线,以实现上述类定义。此程序的正确输出结果应为:

Leaf Node

注意:只能在横线处填写适当的代码,不要改动程序中的其他内容,也不要删除或移动“//****found****”。

#include

using namespace std;

class Component{

public:

//声明纯虚函数print()

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

};

class Composite:public Component{

public:

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

void setChiid(__________)

{

m_chiid=chiid;

}

virtual void print()const

{

m_child->print();

}

private:

Component*m chiid;

};

class Leaf:public Component{

public:

virtual void print()const

{

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

}

};

int main()

{

Leaf node;

Composi te comp;

comp.setChiid(&node);

Component*p=&comp;

p->print();

return 0;

}

(1)virtual void print()const=0;

(2)Component*child

(3)cout<<\\

解析:(1)主要考查考生对纯虚函数的掌握,题目要求声明纯虚函数print()。在其派生类中print()函数的定义为virtual void print()const,由此可知纯虚函数为virtual void print()const=0。

(2)主要考查考生对成员函数的掌握,题目要求填写函数void setChild的形参,由setChild的函数体可知形参为child,再看类的私有成员m_child的定义:Component*m_child;。由此可知形参为:Component*child。

(3)主要考查考生对纯虚函数的掌握,先看主函数的程序:

Leaf node;

Composite comp;

comp.setChild(&node);

Component*p=&comp;

p->print();

第一条和第二条语句都是定义语句,第三条语句调用函数setChild,由setChild函数的定义可知,comp中的m_child等于node,第四条语句定义了个指针p指向comp的地址,也就是node,最后一条语句通过指针p调用函数print,也就是调用类Leaf的函数print,因为题目要求输出:Leaf Node,因此在这里添加语句:cout<<\\

综合应用题

3.使用VC6打开考生文件夹proj3下的工程proj3,其中定义了一个字符串变量类StringVar。类成员的说明在程序注释中。请在//**********333**********和//*****666*****之间填写StringVar成员函数和友元函数的实现代码。在main函数中给出了一组测试数据,运行时输入:

Hello Kitty

此情况下程序的输出应该是:

Hello Kitty

Borg

Borg

注意:只需在//**********333**********和//**********666**********之间填入所编写的若干语句,不要改动程序中的其他内容。

//StringVar.h

#include

#include

#include

#include

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号