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

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

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

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

基本操作题

1.使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错误,请改正程序中的错误,使得程序输出:

1, 2, 3, 4, 5,

注意:不要改动main函数,不能增行或删行,也不能更改程序的结构,错误的语句在

//********error********的下面。

#include

Class TestClass

{

//********error

TestClass(int i)

{

m_i =i;

}

void print()

{

cout<<++m i<<’,’;

}

public:

int m_i;

);

int main()

{

//********error********

int i();

TestClass data(0);

while(i>5)

{

//********error********

i++;

data.print();

}

cout<<endl;

return 0;

}

(1)public:TestClass(int i)

(2)int i(10);

(3)i–;

解析:(1)打开moidl.cpp调试程序,显示错误提示为第一标识下“modi1.cpp(20):error C2248:TestClass::TestClass’:cannot access private memberdeclared in class TestClass’”,提示类TestClass中的构造函数TestClass被定义为私有的,无法获得,所以这里应该是public,即“public:TestClass(int i)”。

(2)题目中要求输出结果为1,2,3,4,5,即循环5次。第三个表示while循环条件是i大于5就进行循环。“int i();”应该实现变量i的初始化,题干中要求不能删除i初始化中的括号,所以在括号中添加i的初始值。大于5且循环5次,所以i的初始值为10,而while循环中对i的操作应该是i–,这样第二个和第三个标示下应该是“int i(10);”和“i–;”。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码,补充空出的代码。程序的功能是寻找1~500以内的亲和数并显示出来,函数amicableNum(int m,int n)判定两个数是否是亲和数。

亲和数的定义为:两个数m和n,如果n的所有因子之和(因子除掉自身)等于m,且m的所有因子等于n,则m、n是互为亲和数。

注意:不能修改程序的其他部分,只能补充amicableNum(int m,int n)函数。

#include

int amicableNum(int n)

{

int sum=0;

for(int i=1;i<n; i++)

{

if(n%i==0)

{

sum+=i;

}

}

return sum;

}

bool amicableNum(int m,int n)

{

}

void main()

{

cout<<\\

if(amicableNum(m)==n

&&amicableNum(n) ==m)

return 1;

return 0;

解析:(1)程序中定义了两个amicableNum()函数,由于参数个数不同重载了amicableNum()函数,函数amicableNum(int n)返回n的因子和,而函数amicableNum(int m,int n)则是判断m和n是不是亲和数,两个函数功能并不相同。

(2)在amicableNum(int m,int n)函数中,可调用amicableNum (int n)函数求m和n的因子和,然后比较两个因子和,如果两个因子和相同则返回真,否则返回假。

综合应用题

3.使用VC6打开考生文件夹下的源程序文件modi3.cpp。类Person完成对人的姓名和年龄的绑定。函数fun()获得年龄比较大的姓名。然后输出这个姓名到屏幕。

其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。

(1)完成类的构造函数, 请在注释//********1********后添加适当的语句。

(2)完成构造函数对姓名的赋值,请在注释//********2********后添加适当的语句。

(3)定义类的友元函数fun(),请在注释//********3********后添加适当的语句。

(4)补充函数fun()的年龄比较,请在注释//********4********后添加适当的语句。

注意:增加代码,或者修改代码的位置已经用符号表示出来。请不要修改其他的程序代码。

#include

Class Person

{

public:

//********1********

{

int i;

for(i=0;sUserrName[i]!=0;

i++1

{

m UserName[i]=

suserrName[i];

)

//********2********

m old=nold;

}

private:

char m_UserName[32];

int m_Old;

//********3********

};

void fun(char*s,Person&personl,

Person&person2)

{

//********4********

if( )

{

for(int i=0;personl.

m UserName[i]!=0;i++)

{

s[i]=personl.m

UserName[i];

s[i+1]=0;

}

}

else

{

for(int i=0;person2.m

UserName[i]!=0;i++)

(

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号