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

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

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

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

基本操作题

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

150

200

注意:错误的语句在∥********error********的下面,

修改该语句即可。

提示:定义Number1为一个整型数据位长的变量。

#include

∥********error********

Struct

{

∥********error********

int Number1:1;

int Number2;

}MyStruct;

void main()

{

MyStruct mstr;

mstr.Number1=150;

mstr.Number2=15;

∥********error********

int*ptr=&mstr.Number1;

cout<<*ptr<<end1;

*ptr=2 0 0;

cout<<*ptr<<endl;

}

(1)typedef struct

(2)int Number1:32; 或int Numberl ;

(3)int*ptr=(int*)&mstr;

解析:结构体MyStruct有两个成员变量Number1和Number2,主函数中定义结构变量mstr,并通过指针改变变量mstr内Number1的值。

简单应用题

2.使用VC6打开考生文件夹下的源程序文件modi2.cpp。阅读下列函数说明和代码。函数MergeAndSort(int s[],int e[],int a[],int m,int n)实现将两个数组合并。这两个数组已经有序,按照由小到大的顺序排列。

例如:

e[]={1,3,5,6},m是数组e的长度,即为4。

a[]={2,4,5,7,11,13},n是数组a的长度,即为6。

则执行的结果为:s[]={1,2,3,4,5,6,7,11,13}

补充函数fun(int s[],int e[],hat a口,int m,int n),使之实现上述要求。

注意:请勿改动主函数。

#include

void MergeAndSort(int S[],

int e[],int a[],int m,int n)

{

}

int main()

{

int data[2 0],i;

int a[]={1,3,5,6);

int b[]={2,4,5,7,11,13);

cout<<”a[]=”;

for(i=0;i<4; i++)

cout<<a[i]<<‘,’;

cout<<endl;

cout<<“b[]=”;

for(i=0;i<6;i++)

cout<<b[i]<<‘,’;

cout<<endl;

MergeAndSort(data,a,b,4,6);

cout<<“s[]=”;

for(i=0; i<9;i++)

cout<<data[i] <<‘,’;

cout<<endl;

return 0;

}

int i,j,k;

i=0;

j=0;

k=0;

while(i<m&&j<n)

{

if(e[i]<a[j])

{

s[k++]=e[i++];

//取小的,因为从小到大排序

}

else if(e[i]==a[j])

//相等,取e[i]或a[j]都可

{

s[k++]=e[i];

i++;

j++;

}

else //e[i]>a[j],取小

的a[j]

{

S[k++]=a[j++];

}

}

while(i<m)s[k++]=e[i++];

//如果数组e后面还有没有加进来的元素,则加进去

while(j<n) s[k++]=a[j++];

//如果数组a后面还有没有加进来的元素,则加进去

解析:函数MergeAndSort(int s[],int e[],inta[],int m,int n)实现将数组e和数组a的合并,这两个数组已经照由小到大的顺序排列,因此只需逐个比较e数组和a数组的元素值,每次取两个元素值的小的,如果相等则取两个当中的任意一个均可。

综合应用题

3.使用VC6打开考生文件央下的源程序文件modi3.cpp,其中定义的类并不完整,按要求完成下列操作,将类的定义补充完整。

(1)定义类CPlanet的保护数据成员distance和revolvePeriod,它们分别表示行星距太阳的距离和行星的公转周期。其中,distance为double型,revolvePeriod为int型。清在注释∥********1********之后添加适当的语句。

(2)定义类CEarth的构造函数CEarth(doublc d,intr),并在其中计算地球绕太刚公转的轨道周长。假定circumference=2*d*3.1416 。 请在注释

∥********2********之后添加适当的语句。

(3)定义类Earth的成员display(),用于显示所有信息。包括地球距太阳的距离,地球的公转刷划,以及地球绕太阳公转的轨道周长。请在注释∥********3********之后添加适当的语句。

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

#include

using namespace std;

class s CPlanet

{

protected:

∥********1********

public:

CPlanet(double d,int r)

{

distance=d;

revolvePeriod=r;

}

};

class CEarth:public CPlanet{

double Circumference,

public:

∥********

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

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

推荐资源

客服

扫码添加客服微信

热线

官方客服

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

电话客服:

客服微信:pujinet

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

公众号

扫码关注微信公众号