- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
2023年9月GESP编程能力认证C++等级考试五级真题(含答案和解析)
一、单选题(每题2分,共30分)。
1.近年来,线上授课变得普遍,很多有助于改善教学效果的设备也逐渐流行,其中包括比较常用的手写板,那么它属于哪类设备?()。
A.输入
B.输出
C.控制
D.记录
答案:A。
解析:本题属于考察计算机基础知识知识。手写板是输入信息的设备,选A。
2.如果a和b均为int类型的变量,且b的值不为0,那么下列能正确判断“a是b的3倍”的表达式是()。
A.(a3==b)
B.(a-b)%3==0
C.(a/b==3)
D.(a==3*b)
答案:D。
解析:本题属于考察运算表达式和位运算知识。b不等于0,a是b的3倍。A选项中,a右移3位,相当于除以8;B是取余运算;如果a=7,b=2,a/b的结果也等于3,因为是整型,C选项也不正确;选D。
3.如果变量a和b分别为double类型和int类型,则表达式(a=6,b=3*(7+8)/2,b+=a)的计算结果为()。
A.6
B.21
C.28
D.不确定
答案:C。
解析:本题属于考察数据类型、逗号表达式、运算表达式知识。逗号表达式从左到右依次计算每一个表达式,整个逗号表达式的结果是最后一个表达式的计算结果,a=6,b=3*15/2=22,b=6+22=28,选C。
4.有关下面C++代码说法错误的是()。
A.sumA()用循环方式求从1到N之和,sumB()用递归方式求从1到N之和。
B.默认情况下,如果输入正整数1000,能实现求从1到1000之和。
C.默认情况下,如果输入正整数100000,能实现求从1到100000之和。
D.一般说来,sumA()的效率高于sumB()。
答案:C。
解析:本题属于考察递归和函数知识。sumA用循环求的是1到n的总和;sumB用递归的方式求1到n的总和。1加到100000的和大于int类型最大值,2147483647,会溢出,选C。
5.下面C++代码以递归方式实现字符串反序,横线处应填上代码是()。
A.sIn[sIn.length()-1]+sReverse(sIn.substr(0,sIn.length()-1));
B.sIn[0]+sReverse(sIn.substr(1,sIn.length()-1));
C.sReverse(sIn.substr(0,sIn.length()-1))+sIn[sIn.length()-1];
D.sReverse(sIn.substr(1,sIn.length()-1))+sIn[sIn.length()-1];
答案:A。
解析:本题属于考察递归和函数知识。要倒序输出字符串,先输出字符串中的最后一个字符,最后一个字符下标是长度-1,然后翻转除了最后一个字符的字符串,这个字符串是从0开始,选sln.length()-1个字符,选A。
6.印度古老的汉诺塔传说:创世时有三根金刚柱,其中一柱从下往上按照大小顺序摞着64片黄金圆盘,当圆盘逐一从一柱借助另外一柱全部移动到另外一柱时,宇宙毁灭。移动规则:在小圆盘上不能放大圆盘,在三根柱子之间一次只能移动一个圆盘。下面的C++代码以递归方式实现汉诺塔,横线处应填入代码是()。
A.Hanoi(B,C,A,N-2)
B.Hanoi(B,A,C,N-1)
C.Hanoi(A,B,C,N-2)
D.Hanoi(C,B,A,N-1)
答案:B。
解析:本题属于考察递归和函数知识。汉诺塔比较经典的递归问题,第11行代码意味这剩下的N-1快圆盘,现在B柱子上,借助A柱,挪到C柱上,选B。
7.根据下面C++代码的注释,两个横线处应分别填入()。
A.compare和isOdd(lstA[i])
B.compare(x1,y1)和isOdd
C.compare和isOdd
D.compare(x1,y1)和isOdd(lstA[i])
答案:A。
解析:本题考察的是vector和sort函数的使用。本题中首先创建了一个vectorlstA存储整数1~99,然后调用sort函数对lstA进行排序,sort函数排序需要传递三个参数,前两个参数决定了排序范围的起始位置和结束位置,第三个参数是排序规则函数,排序规则函数需要两个参数和一个bool类型的返回值,所以代码1处传递排序规则函数compare,只需要写函数名即可,不需要写成调用的形式,排除选项B和D。
接下来的代
您可能关注的文档
- 2023年12月GESP编程能力认证C++等级考试五级真题(含答案和解析).docx
- 2023年12月GESP编程能力认证C++等级考试一级真题(含答案).docx
- 2023年12月GESP编程能力认证C++等级考试四级真题(含答案).docx
- 2023年12月GESP编程能力认证C++等级考试三级真题(含答案).docx
- 2023年9月GESP编程能力认证C++等级考试二级真题(含答案和解析).docx
- 2023年9月GESP编程能力认证C++等级考试六级真题(含答案和解析).docx
- 2023年9月GESP编程能力认证C++等级考试三级真题(含答案和解析).docx
- 2023年9月GESP编程能力认证C++等级考试四级真题(含答案和解析).docx
原创力文档


文档评论(0)