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

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

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

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

基本操作题

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

Name:sonny Type:dog

Name:John Type:dog

Name:Danny Type:cat

Name:John Type:dog

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

#include<lostream>

using namespace std;

enum Pets_type{dog,cat,bird,

fish};

class Pets{

private:

char * name;

Pets_type type;

public:

Pets(const char * name=\\

(1)this->type=type;

(2)delete[]name;

(3)strcpy(this->name,s.name);

解析:(1)主要考查考生对构造函数的掌握情况,因为形参名和类的私有成员名称都是type,为了避免混淆,所以规定类的私有成员使用this指针调用,即:this->type=type;。

(2)主要考查考生对析构函数的掌握情况,题目中要求,释放name所指向的字符串。要释放name指针用delete语句,即delete[]name;。

(3)主要考查考生对sineW函数的掌握情况,strcpy函数的形参为两个字符串,而name为指向字符串的指针,因此使用语句:strcpy(this->name,s.name);。

简单应用题

2.请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有类CPolygon(“多边形”)、CRectangle(“矩形”)、CTfiange(“三角形”)的定义。请在横线处填写适当的代码并删除横线,以实现上述类定义。该程序的正确输出结果应为:

20

10

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

#include<iostream>

using namespace std;

class CPolygon{

public:

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

_______//纯虚函数area

声明

void printarea(void)

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

{cout<<_______<<end1,}

};

class CRectangle:public CPolygon{

int width; //长方形宽

int height;//长方形高

public:

CRectangle(int W,int h):

width(w),height(h){}

int area(void){return

(width * height);}

};

class CTriangle:public CPolygon{

int length;//三角形一边长

int height;//该边上的高

public:

CTriangle(int 1,int h):

length(1),height(h){}

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

int area(void){return(_______)/2;}

};

int main()f

CRectangle rect(4,5);

CTriangle trgl(4,5);

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

_______*ppoly1,*ppoly2;

ppoly1=▭

ppoly2=&trg1;

ppoly1->printarea();

ppoly2->printarea();

retumR 0;

}

(1)viauM int area(void)=0;

(2)area()

(3)length * height

(4)Cpolygon

解析:(1)主要考查考生对纯虚函数的掌握,在定义纯虚函数时要看在派生类中函数的定义:int area(void)。由此可知纯虚函数应该为:viauM int area(void)=0;。

(2)主要考查考生对纯虚函数的掌握情况,由void printarea(void)可知,该函数要打印面积,因此在此要调用纯虚函数area,即cont<<area()。

(3)主要考查考生对数学公式的掌握,该函数要返回三角形面积,三角形的面积公式为长乘以该边上的高除以2,即return(length * height)/2;。

(4)主要考查考生对抽象类的掌握情况,根据程序段:

ppoly1=▭

ppoly2=&trg1;

可知指针ppoly1指向CReetangle类,而指针ppoly2指向CTfiangle类,因此在这里只能填这两种类的基类CPolygon类。

综合应用题

3.请使用【答题】菜单命令或直接用VC6打开考生文件夹下的工程prog3,其中声明了ValArray类,该类在内部维护一个动态分配的整型数组。ValArray类的复制构造函数应实现对象的深层复制。请编写ValArray类的复制构造函数。在main函数中给出了一组测试数据,此种隋况下程序的输出应该是:

ValArray v1={1,2,3,4,5}

ValArray v2={1,2,3,4,5}

要求:

补充编制的内容写在“//********333********”与“********666********”之间,不得修改程序的其他部分。

注意:程序最后将结果输出到文件out.dat中。输出函数writeToFile已经编译为boj文件,并且在本程序中调用。

//ValArray.h

#include<iostream>

using namespace std;

class ValArray{

int * v;

int size;

public:

ValArray(const int * P,intn):size(n)

{

v=new in

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号