2024年3月GESP编程能力认证C++等级考试四级真题(含答案和解析).docxVIP

2024年3月GESP编程能力认证C++等级考试四级真题(含答案和解析).docx

此“教育”领域文档为创作者个人分享资料,不作为权威性指导和指引,仅供参考
  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

2024年3月GESP编程能力认证C++等级考试四级真题(含答案和解析)

一、单选题(每题2分,共30分)。

1.若函数声明为intf(intx){x+=3;returnx;},则对声明的变量inta=3,下面哪个调用能够改变a的值()。

A.f(a);

B.f(*a);

C.f(a);

D.f(a-3);

答案:C。

解析:本题属于考察函数引用传递参数,函数的参数为变量的引用,函数f直接传入参数a即可改变a的值。

2.下面C++代码执行后,输出的是()。

intmain()

{

intx[]={2,0,2,4};

chargeSP[]=GradeExaminationofSP;

coutgeSP[sizeof(x)]endl;

coutendl;

return0;

}

A.G

B.e

C.n

D.P

答案:C。

解析:本题属于考察数据大小的知识。一个int数据的大小通常为4字节,那么x数组的大小为16个字节。数组下标从0开始,故geSP[16]=‘n’,输出n。

3.下面C++代码执行后输出是()。

intfoo(float*f)

{

returnint(*f*2);

}

intmain()

{

floatfnum[10]={1.1};

fnum[1]=foo(fnum);

coutfnum[0]+fnum[1]endl;

coutendl;

return0;

}

A.1

B.1.1

C.3

D.3.1

答案:D。

解析:本题属于考察C++指针知识。foo函数的功能是传入一个float指针f,返回值为f指针指向的内容乘2的整数部分。数组fnum也是指针地址,指向数组第一个元素,fnum[1]=int(2*1.1)=2,fnum[0]+fnum[1]=1.1+2=3.1,输出3.1。

4.对二维数组intarr[3][16],则arr[1]占用内存的大小为()字节。

A.4

B.16

C.48

D.64

答案:D。

解析:本题属于考察int类型数组大小知识,一个int类型的数据通常占4个字节,arr[1]中有16个int数据,总共占16*4=64个字节大小。

5.对二维数组intarr[3][16],若arr的地址是0x28cbc0,则arr[1]的值是()。

A.0x28cbc4

B.0x28cbd0

C.0x28cc00

D.不确定

答案:C。

解析:本题属于考察二维数组的地址的转换。arr[1]的地址等于arr[0]的地址加上arr[0]的大小,即0x28cbc0加上10进制的16*4,转换为十六进制答案为0x28cc00。

6.下面C++代码执行后输出是()。

intmain()

{

char*p=IloveGESP!;

coutp+5endl;

coutendl;

return0;

}

A.e

B.Ilov

C.eGESP!

D.GESP!

答案:C。

解析:本题属于考察C++字符串知识,将p视为指针,指向字符串第1个字符,(p+5)指向第6个字符,输出(p+5)则输出从第6个字符到字符串结尾。

7.下面C++代码执行以后输出的是()。

intrc=5;

intmain()

{

intrc;

cout++rcendl;

coutendl;

return0;

}

A.0

B.1

C.6

D.不确定

答案:D。

解析:本题属于考察C++中参数的作用域知识。虽然定义了全局变量rc,但有局部变量时局部变量优先,main函数中的局部变量没有赋初值,所以(++rc)的值不确定。

8.下面C++函数中采用的算法是()。

intfib(intn)

{

inti,f[n]={0,1};

for(inti=2;i=n;i++)

f[i]=f[i-1]+f[i-2];

returnf[n];

}

A.递推

B.递归

C.迭代

D.循环

答案:A。

解析:本题属于考察递推算法。递推算法是由已知的条件出发,根据递推关系(本题递推关系是f[i]=f[i-1]+f[i-2],即求斐波那契数列),逐次推算出中间结果及最后结果。

9.插入排序在最好情况下的时间复杂度是()。

A.O(1)

B.O(N/2)

C.O(N)

D.O(N2)

答案:C。

解析:本题属于考察

文档评论(0)

资格考试 + 关注
实名认证
文档贡献者

提供各类资格考试试卷/真题

1亿VIP精品文档

相关文档