- 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.唯一分解定理描述的内容是()。
A.任意整数都可以分解为素数的乘积
B.每个合数都可以唯一分解为一系列素数的乘积
C.两个不同的整数可以分解为相同的素数乘积
D.以上都不对
答案:B。
解析:任何一个大于1的整数n都可以分解成若干个素因数的连乘积,若n为素数,则乘积为n本身,若n为合数,则乘积包含若干素数的乘积。
2.贪心算法的核心思想是()。
A.在每一步选择中都做当前状态下的最优选择
B.在每一步选择中都选择局部最优解
C.在每一步选择中都选择全局最优解
D.以上都对
答案:A。
解析:贪心算法核心思想是选择当前状态下的最佳选择,动态规划的核心思想应该是“最优子结构”和“重叠子问题”。
3.下面的C++代码片段用于计算阶乘。请在横线处填入(),实现正确的阶乘计算。
A.returnn*factorial(n-1);
B.returnfactorial(n-1)/n;
C.returnn*factorial(n);
D.returnfactorial(n/2)*factorial(n/2);
答案:A。
解析:由递归式如下图,if(n=2)returnfact[n-1]*n。
4.下面的代码片段用于在双向链表中删除一个节点。请在横线处填入(),使其能正确实现相应功能。
A.if(current-next!=nullptr)current-next-prev=current-prev;
B.current-prev-next=current-next;
C.deletecurrent-next;
D.current-prev=current-next;
答案:B。
解析:如下。
双链表current的删除需要处理两个指针。
current的前驱的next指针更新到prev的后继。
current的后继的prev指针更新到current的前驱。
空白处需要填写的是,将current的前驱的next更新为current的next。
A更新的是current的后继显然不对,C是删除了current的后继,D更新的是current的前驱,而不是前驱的next。
5.辗转相除法也被称为()。
A.高斯消元法
B.费马定理
C.欧几里德算法
D.牛顿迭代法
答案:C。
解析:高斯消元法,是线性代数中求解线性方程组的一种求解方法。
费马定理,分为费马小定理和费马大定理,是初等数论中的两个重要原理。
欧几里得算法,又称辗转相除法,是求解最大公约数的一种算法。另一种算法为更相减损法,是出自《九章算术》,是中国古代提出的一种最大公约数的算法。
牛顿迭代法,又称牛顿-拉夫逊(拉弗森)方法,它是牛顿在17世纪提出的一种在实数域和复数域上近似求解方程的方法。
6.下面的代码片段用于计算斐波那契数列。该代码的时间复杂度是()。
intfibonacci(intn){
if(n=1){
returnn;
}else{
returnfibonacci(n-1)+fibonacci(n-2);
}
}
A.O(1)
B.O(n)
C.O(2n)
D.O(logn)
答案:C。
解析:如下。
斐波那契递推式为:f(n)=f(n-1)+f(n-2),结合递归树,以最坏的情况考虑,f(n)每次减少1的问题规模需要变为两个分支,记为f(n)=21f(n-1)=22f(n-2)=…=2n-1f(1)=2n-1,因此复杂度为O(2n)。
7.下面的代码片段用于将两个高精度整数进行相加。请在横线处填入(),使其能正确实现相应功能。
A.result=to_string(sum%10)+result;
B.result=to_string(carry%10)+result;
C.result=to_string(sum/10)+result;
D.result=to_string(sum%10+carry)+result;
答案:A。
解析:如下。
string下标0的位置对应num1和num2的最高位,模拟加法从个位开始,第4行的i,j两个指针指向了num1和num2的数组最高下标,对应个位。
第5行自低位向高位模拟加法计算,同时保证了:只要有其中一个数参与加法或者最终产生更高进位carry就执行技法。
第6,7行将字符转换为数字,同时若有一方已超过位数,补0参与加法运算。
第8行为模拟计算,第9行为处理进位,第10行处理当前位
您可能关注的文档
- 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
- 2024年3月GESP编程能力认证C++等级考试四级真题(含答案和解析).docx
- 2024年3月GESP编程能力认证C++等级考试一级真题(含答案和解析).docx
- 2025及未来5年中国铣床压板市场分析及竞争策略研究报告.docx
- 2025及未来5年中国彩钢板房市场分析及竞争策略研究报告.docx
- 2025及未来5年中国美术型环氧粉末涂料市场分析及竞争策略研究报告.docx
- 2025及未来5年中国仿真石市场分析及竞争策略研究报告.docx
- 2025及未来5年中国主控计算机市场分析及竞争策略研究报告.docx
- 2025及未来5年中国弹性消毒地垫市场分析及竞争策略研究报告.docx
- 2025及未来5年中国木质胡椒磨市场分析及竞争策略研究报告.docx
- 2025及未来5年中国不锈钢喂水器市场分析及竞争策略研究报告.docx
- 2025及未来5年中国分条料市场分析及竞争策略研究报告.docx
- 2025年事业单位工勤技能-河南-河南兽医防治员三级(高级工)历年参考题典型考点含答案解析.docx
原创力文档


文档评论(0)