GESP:2024年6月 C++三级 真题及解析

四季读书网 3 0
GESP:2024年6月 C++三级 真题及解析
老师已为大家备好电子打印版,需要完整电子版文件的朋友,可以拉到文末查看
GESP:2024年6月 C++三级 真题及解析 第1张
GESP:2024年6月 C++三级 真题及解析 第2张
GESP:2024年6月 C++三级 真题及解析 第3张
GESP:2024年6月 C++三级 真题及解析 第4张
GESP:2024年6月 C++三级 真题及解析 第5张
GESP:2024年6月 C++三级 真题及解析 第6张
GESP:2024年6月 C++三级 真题及解析 第7张
GESP:2024年6月 C++三级 真题及解析 第8张
GESP:2024年6月 C++三级 真题及解析 第9张
GESP:2024年6月 C++三级 真题及解析 第10张

【答案解析】

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。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第11张

4.解释:答案选C。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第12张

5.解释:答案选C。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第13张

6.解释:答案选B。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第14张

7.解释:答案选C。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第15张

8.解释:答案选C。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第16张
相关知识点的复习与拓展:

截至本次考试当年6月份,有关C++语言交换变量值的写法,罗列如下图所示——

GESP:2024年6月 C++三级 真题及解析 第17张
GESP:2024年6月 C++三级 真题及解析 第18张
GESP:2024年6月 C++三级 真题及解析 第19张
GESP:2024年6月 C++三级 真题及解析 第20张
GESP:2024年6月 C++三级 真题及解析 第21张
GESP:2024年6月 C++三级 真题及解析 第22张
GESP:2024年6月 C++三级 真题及解析 第23张

9.解释:答案选C。

GESP:2024年6月 C++三级 真题及解析 第24张
相关知识点的复习与拓展:

截至本次考试当年6月份,C风格字符串与C++内置 string 类,对字符串长度的处理,有不同处理方式方式,我们可以用下面的代码来帮助理解——

GESP:2024年6月 C++三级 真题及解析 第25张

10.解释:答案选B。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第26张
GESP:2024年6月 C++三级 真题及解析 第27张
11.解释:答案选A。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第28张
12.解释:答案选C。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第29张

相关知识点的复习与拓展:

截至考试当年6月,ASCII码的码值对照,详见下图——

GESP:2024年6月 C++三级 真题及解析 第30张
13.解释:答案选B。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第31张

相关知识点的复习与拓展:

截至考试当年6月,以有关三目运算符的实现原理,可以参考下图帮助理解——

GESP:2024年6月 C++三级 真题及解析 第32张

14.解释:答案选D。

在C++中,我们使用双引号( " )来示字符串文字。当字符串中包含引号时,我们可以使用转义字符( \ )表示引号的字面值而不会被解释为字符串的结束。在给定的选项中,选项A中使用了错误的转义字符语法( \s 不是有效的转义序列);选项B中引号的使用不正确,导致字符串的结束位置不正确;选项C中的引号也没有正确地进行转义。

选项D正确。

15.解释:答案选A。

详细解析见下图——

GESP:2024年6月 C++三级 真题及解析 第33张
GESP:2024年6月 C++三级 真题及解析 第34张
GESP:2024年6月 C++三级 真题及解析 第35张

【答案解析】

1.解释:正确。
GESP(Grade Examination of Software Programming)测试,是一个通用的入门级认证考试,评估认证者在计算机编程和软件开发方面的基本能力,而不是特定于某种编程语言。虽然在实际应用中,编程语言的选择可能会对解决问题的方法和效率产生影响,但是GESP认证更侧重于对基本编程概念和解决问题的一般方法的评估,而不是特定语言的高级特性或库的掌握程度。因此,可以认为在GESP测试中,不同编程语言的使用对于获得相同级别的认证基本上是无关紧要的

2.解释:正确。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第36张

3.解释:正确。

补码的优点之一是可以将减法运算转化为加法运算,从而简化计算机的硬件设计。在计算机中,加法运算是硬件中最基本的操作之一。通过使用补码表示整数,可以将减法运算转化为加法运算,从而减少硬件设计的复杂性。

补码的原理是用一个固定位数的二进制表示整数,其中最高位表示符号位,0表示正数,表示负数。对于负数,补码是其绝对值的二进制表示按位取反,然后加1。这样,在进行减法运算时,可以通过将减法转换为补码的加法来进行计算。通过使用补码,计算机可以使用相同的加法电路来执行正数和负数的加法和减法运算,从而简化了硬件设计。这种转换还能避免减法操作的特殊处理,提高了计算机的运算效率。

因此,补码的优点之一是可以将减法运算转化为加法运算,从而简化计算机的硬件设计。

4.解释:错误。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第37张

5.解释:错误。

数组的所有元素在内存中是连续存放的。这是数组的一个基本特性,它确保了数组元素的高效访问和操作。每个元素在内存中的位置可以通过计算第一个元素的地址和元素的索引来确定。

相关知识点的复习与拓展:

截至考试当年6月,以二维数组为例,数组元素在内存中的存储顺序,可以参考下图帮助理解——

GESP:2024年6月 C++三级 真题及解析 第38张

6.解释:错误。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第39张

7.解释:正确。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第40张
GESP:2024年6月 C++三级 真题及解析 第41张

相关知识点的复习与拓展:

截至考试当年6月,有关位运算的相关知识点,参见下图——

GESP:2024年6月 C++三级 真题及解析 第42张

GESP:2024年6月 C++三级 真题及解析 第43张

GESP:2024年6月 C++三级 真题及解析 第44张

8.解释:错误。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第45张
GESP:2024年6月 C++三级 真题及解析 第46张
GESP:2024年6月 C++三级 真题及解析 第47张

9.解释:正确。

详细解析见下图——
GESP:2024年6月 C++三级 真题及解析 第48张
GESP:2024年6月 C++三级 真题及解析 第49张
GESP:2024年6月 C++三级 真题及解析 第50张

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++三级 真题及解析 第51张

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++三级 真题及解析 第52张
GESP:2024年6月 C++三级 真题及解析 第53张
GESP:2024年6月 C++三级 真题及解析 第54张

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<longlongA(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;}
代码思路——
GESP:2024年6月 C++三级 真题及解析 第55张
GESP:2024年6月 C++三级 真题及解析 第56张

课程体系——

GESP:2024年6月 C++三级 真题及解析 第57张
需要无水印PDF格式文件,
或者课程体系咨询,
欢迎扫描下面二维码添加好友垂询。
GESP:2024年6月 C++三级 真题及解析 第58张

GESP:2024年6月 C++三级 真题及解析 第59张

▍ 声明:本文整理自网络,如有侵权,请联系删除。

本公号刊载此文,是出于合法合理地分享和传播信息,扩大大受众范围,促进学术交流,推动共同进步之目的。公众号持有人郑重声明,本文的发布,将严格遵守相关规定和法律法规,不侵犯任意潜在作者的权益,不改变引用原文(若有)的意图和内容。若有来源标注错误或侵犯了您的合法权益,请随时与我们联系协商,联系(QQ):993225721,我们将及时更正、删除。文章若有幸得到转载,首先,公众号持有人感谢转载人为读者阅读提供了有价值的信息和知识,希望文章能够在被转载的平台上得到更广泛的传播和交流;其次,转载人应充分考虑到转载动作本身所可能带来的相应的风险和责任,包括但不限于侵犯知识产权、侵犯他人权益等行为所引起的法律责任,确保本文的合法传播和使用。同时,本人也极其愿意在转载过程中尽力配合转载人了解、关注、规避、消除相关的潜在风险。若转载人有相任何关疑虑,同样欢迎随时与我们联系协商,联系(QQ):993225721。

喜欢您关注我们哦——

抱歉,评论功能暂时关闭!