- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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。
解析:本题属于考察
您可能关注的文档
- 2024年6月GESP编程能力认证C++等级考试八级真题(含答案和解析).docx
- 2024年6月GESP编程能力认证C++等级考试六级真题(含答案和解析).docx
- 2024年6月GESP编程能力认证C++等级考试七级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试八级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试二级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试六级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试七级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试三级真题(含答案和解析).docx
原创力文档


文档评论(0)