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

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

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

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

基本操作题

1.请使用VC6或使用【答题】菜单打开考生文件夹proj1下的工程proj1,此工程中含有一个源程序文件proj1.cpp。其中位于每个注释“//ERROR ****found****”之后的一行语句存在错误。请改正这些错误,使程序的输出结果为:

This object is no.1

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

//proj1.cpp

#include

using namespace std;

class MyClass

{

public:

MyClass():count(0){cout<<\\

(1)void Inc()

(2)int count;

(3)obj->Inc();

解析:(1)考查考生对const的掌握,在Inc函数的函数体{cout<<\\

简单应用题

2.请使用VC6或使用【答题】菜单打开考生文件夹proj2下的工程proj2,该工程中包含一个程序文件main.cpp,其中有坐标点类point、线段类Line和三角形类Triangle的定义,还有main函数的定义。程序中两点间距离的计算是按公式d=实现的,三角形面积的计算是按公式f=实现的,其中s=

(1)const Point&p

(2)p1(p1),p2(p2)

(3)Point p1,Point p2,Point p3

(4)(lengthl()+length2()+length3())/2

解析:(1)主要考查考生对函数形参的掌握,由函数的注释可知有本坐标点到达某个坐标点类的距离,再根据函数体return sqrt((x—p.x)*(x—p.x)+(y—p.y)*(y—p.y));可知,该坐标点类名为p,因此可以知道形参为Point&p,为了不改变该坐标点的值,前面要加上const。

(2)主要考查考生对构造函数的掌握,对于常变量型私有成员const Point pl,p2,只能用成员初始化列表进行赋值。

(3)主要考查考生对构造函数的掌握,由空格后面的语句:pl(p1),p2(p2),p3(p3){}可知,该构造函数需要进行成员列表初始化,再看类的私有成员const Point pl,p2,p3,可知pl,p2,p3是Point类型,因此形参为Point pl,Point p2,Point p3。

(4)主要考查考生对成员函数的掌握,根据函数注释,可知本函数要求计算三角形面积,再看题目的提示:s=(a+b+c)/2。可知空格处要填的是三角形的三条边之和除以2,而求边长的函数已经给出,这里直接调用即可。

综合应用题

3.请使用VC6或使用【答题】菜单打开考生目录proj3下的工程文件proj3,此工程包含一个源程序文件proj3.cpp,其功能是从文本文件in.dat中读取全部整数,将整数序列存放到intArray类的对象my.Array中,然后对整数序列按非递减排序,最后由函数writeToFile选择序列中的部分数据输出到文件out.dat中。文件in.dat中的整数个数不大于300个。

要求:

补充编制的内容写在“//**********333**********”与“//**********666**********”两行之间。实现对整数序列按非递减排序,并将排序结果在屏幕上输出。不得修改程序的其他部分。

注意:程序最后已将结果输出到文件out.dat中=输出函数writeToFile已经给出并且调用。

//proj3.cpp

#include

#include

#include

using namespace std;

class intArray

{

private:

int*array;//整数序列首地址

int length;//序列中的整数个数

public:

//构造函数,从文件中读取数据用于初始化新对象。参数是文件名

intArray(char*filename);

void sort();//对整数序列按非递减排序

~intArray();

void writeToFile f char *filename);

},

intArray::intArray(char *filename)

{

ifstream myFile(filename);

int len=300;

array=new int[len];

length=0 ;

while(myFile>>array[length++]);

length–;

myFile.close();

}

void intArray::sort(){

//**********333**********

//**********666**********

}

intArray::~intArray()

{

delete[]array;

}

void intArray:: writeToFile

(char*filename)

{

int step=0;

ofstream outFile(filename);

for(int i=0;i<length;i=i+step)

{

outFile<<array[i]<<

endl;

Step++;

}

outFile.close();

}

void main()

{

intArray myArray(\\

for(int i=0;i<length;++i) //遍历整个数组

for(int j=i;j<length;++j) //从i++遍历整数组

if(array[i]>array[j])

//如果arrag[i]>array[j],把array[i]与array [i]进行对换

{

int temp; //定义一个临时变量temp

temp=array[i]; //把array[i]值放到变量temp

array[i]=array[j];

//把array[j]值赋

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号