老师已为大家备好电子打印版,需要完整电子版文件的朋友,可以拉到文末查看。 【答案解析】
1.解释:答案选C。 GESP认证考试截至本次认证,可选语言有三种分别是Scratch、Python和C++。 2.解释:答案选B。
本题通过流程图体现分支结构,条件判断框中填写闰年的判定条件:年份是4的倍数时,且不是100的倍数时,该年是闰年;或者,当年份是400的倍数时才是闰年。
相关知识点的复习与拓展:
截至考试当年6月,常见的判断闰年的C++代码的写法,举例如下——
boolisLeapYear(int year) { //判断是否为闰年的函数// 闰年规则:能被4整除且不能被100整除, 或 能被400整除return (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);}3.解释:答案选C。
详细解析见下图——
4.解释:答案选C。
详细解析见下图——
5.解释:答案选C。
详细解析见下图——
6.解释:答案选B。
详细解析见下图——
7.解释:答案选C。
详细解析见下图——
8.解释:答案选C。
详细解析见下图——
相关知识点的复习与拓展: 截至本次考试当年6月份,有关C++语言交换变量值的写法,罗列如下图所示——
9.解释:答案选C。
相关知识点的复习与拓展: 截至本次考试当年6月份,C风格字符串与C++内置 string 类,对字符串长度的处理,有不同处理方式方式,我们可以用下面的代码来帮助理解——
10.解释:答案选B。
详细解析见下图——
11.解释:答案选A。详细解析见下图——
12.解释:答案选C。详细解析见下图——
相关知识点的复习与拓展:
截至考试当年6月,ASCII码的码值对照,详见下图——
13.解释:答案选B。详细解析见下图——
相关知识点的复习与拓展:
截至考试当年6月,以有关三目运算符的实现原理,可以参考下图帮助理解——
14.解释:答案选D。
在C++中,我们使用双引号( " )来示字符串文字。当字符串中包含引号时,我们可以使用转义字符( \ )表示引号的字面值而不会被解释为字符串的结束。在给定的选项中,选项A中使用了错误的转义字符语法( \s 不是有效的转义序列);选项B中引号的使用不正确,导致字符串的结束位置不正确;选项C中的引号也没有正确地进行转义。
选项D正确。
15.解释:答案选A。
详细解析见下图——
【答案解析】
1.解释:正确。 GESP(Grade Examination of Software Programming)测试,是一个通用的入门级认证考试,评估认证者在计算机编程和软件开发方面的基本能力,而不是特定于某种编程语言。虽然在实际应用中,编程语言的选择可能会对解决问题的方法和效率产生影响,但是GESP认证更侧重于对基本编程概念和解决问题的一般方法的评估,而不是特定语言的高级特性或库的掌握程度。因此,可以认为在GESP测试中,不同编程语言的使用对于获得相同级别的认证基本上是无关紧要的。 2.解释:正确。
详细解析见下图——3.解释:正确。
补码的优点之一是可以将减法运算转化为加法运算,从而简化计算机的硬件设计。在计算机中,加法运算是硬件中最基本的操作之一。通过使用补码表示整数,可以将减法运算转化为加法运算,从而减少硬件设计的复杂性。
补码的原理是用一个固定位数的二进制表示整数,其中最高位表示符号位,0表示正数,表示负数。对于负数,补码是其绝对值的二进制表示按位取反,然后加1。这样,在进行减法运算时,可以通过将减法转换为补码的加法来进行计算。通过使用补码,计算机可以使用相同的加法电路来执行正数和负数的加法和减法运算,从而简化了硬件设计。这种转换还能避免减法操作的特殊处理,提高了计算机的运算效率。
因此,补码的优点之一是可以将减法运算转化为加法运算,从而简化计算机的硬件设计。
4.解释:错误。
详细解析见下图——5.解释:错误。
数组的所有元素在内存中是连续存放的。这是数组的一个基本特性,它确保了数组元素的高效访问和操作。每个元素在内存中的位置可以通过计算第一个元素的地址和元素的索引来确定。
相关知识点的复习与拓展:
截至考试当年6月,以二维数组为例,数组元素在内存中的存储顺序,可以参考下图帮助理解——
6.解释:错误。
详细解析见下图——7.解释:正确。
详细解析见下图——相关知识点的复习与拓展:
截至考试当年6月,有关位运算的相关知识点,参见下图——
8.解释:错误。
详细解析见下图—— 9.解释:正确。
详细解析见下图——10.解释:正确。
可以使用枚举的方法找出所有符合条件的四位数,即满足将整数从中剪开,将两个数之和平方后等于原数的条件。
使用枚举方法找出所有符合条件的四位数的参考代码如下——
#include<iostream>usingnamespacestd;intmain(){for (int num = 1000; num <= 9999; num++) {int left = num / 100;int right = num % 100;if ((left + right) * (left + right) == num) {cout << num << " ";}}cout << endl;return0;}GESP 2024年6月 C++三级 移位
#include <bits/stdc++.h>using namespace std;intmain() {int n;cin >> n;// 对26取模,处理n>26的情况n = n % 26;string result = "";for (char c = 'A'; c <= 'Z'; c++) {// 当前字母的位置 (0-25)int pos = c - 'A';// 移位后的位置int newPos = (pos + n) % 26;// 转换为新字母result += char('A' + newPos);}cout << result << endl;return 0;}代码思路—— GESP 2024年6月 C++三级 寻找倍数
#include<iostream>#include<vector>#include<algorithm>using namespace std;intmain(){int t;cin >> t;while (t--) {int n;cin >> n;vector<longlong> A(n); // 使用 long long 防止大数溢出for (int i = 0; i < n; i++) {cin >> A[i];}// 找到最大值long long max_val = *max_element(A.begin(), A.end());bool flag = true;// 检查最大值是否能整除所有元素for (int i = 0; i < n; i++) {if (max_val % A[i] != 0) {flag = false;break;}}if (flag) {cout << "Yes" << endl;} else {cout << "No" << endl;}}return 0;}代码思路—— 课程体系——
需要无水印PDF格式文件, 或者课程体系咨询, 欢迎扫描下面二维码添加好友垂询。
▍ 声明:本文整理自网络,如有侵权,请联系删除。
本公号刊载此文,是出于合法合理地分享和传播信息,扩大大受众范围,促进学术交流,推动共同进步之目的。公众号持有人郑重声明,本文的发布,将严格遵守相关规定和法律法规,不侵犯任意潜在作者的权益,不改变引用原文(若有)的意图和内容。若有来源标注错误或侵犯了您的合法权益,请随时与我们联系协商,联系(QQ):993225721,我们将及时更正、删除。文章若有幸得到转载,首先,公众号持有人感谢转载人为读者阅读提供了有价值的信息和知识,希望文章能够在被转载的平台上得到更广泛的传播和交流;其次,转载人应充分考虑到转载动作本身所可能带来的相应的风险和责任,包括但不限于侵犯知识产权、侵犯他人权益等行为所引起的法律责任,确保本文的合法传播和使用。同时,本人也极其愿意在转载过程中尽力配合转载人了解、关注、规避、消除相关的潜在风险。若转载人有相任何关疑虑,同样欢迎随时与我们联系协商,联系(QQ):993225721。 喜欢您关注我们哦——


























































