Logo

2024年9月 GESP C++ 3级

GESP · 3级 · 2024-09

60:00
满分 100
时长 60 分钟
27

2024年9月 GESP C++ 3级认证考试真题(含编程操作题部分)

答题卡 已答 0/27
已答 正确 错误 编程题

单选题(共 15 题,每题 2 分)

1

下列代码中,输出结果是( )

#include<iostream>
using namespace std;
int main()
{
    double a=0.9;
    double b=1.0;
    if(((b-a)==0.1))
    {
        cout<<"Equal"<<endl;
    }
    else
    {
        cout<<"Not equal"<<endl;
    }
}
2

关于计算机中的编码,下列说法中正确的是()

3

$8$ 进制数 $3703$ 转换成 $16$ 进制数是()

4

$0.8125$ 变成二进制是( )。

5

下面说法正确的是( )

6

下列说法正确的是()

7

下列代码实现的是( )

void Swap(int &a, int &b) {
    if (a != b) {
        a ^= b;
        b ^= a;
        a ^= b;
    }
}
8

$a$ & ~$1$ 运算实现的是( )。

9

$a = 1010\ 1110$,a << 2,下面关于这个说法正确的是( )。

10

下列程序中,resultresult2 输出分别是( )

long a = 123;
int b = 1;
long result = a & b;
cout << result << endl;
long a2 = -123;
unsigned int b2 = -1;
long result2 = a2 & b2;
cout << result2 << endl;
11

陈 A 歹种植一批农作物,第一天需要浇水一次,随后的两天(第 2、第 3 天),每天需要浇水 2 次,再随后的 3 天(第 4、第 5、第 6 天),需要每天浇水 3 次,这样持续下去,随后的 $n$ 天,每天需要浇水 $n$ 次。请问在 100 天里,总共浇了多少次水( )

12

关于一维数组,下列程序能够正确执行的是( )。

13

下面的程序中,会输出( )。

int a[10]={1,2,3,4,5,6,7,8,9,10};
cout<<a[10]<<endl;
14

有 $A$ $B$ $C$ $D$ $4$ 个人,其中一个是小偷,每个人说一句话,只有小偷说的是假话,其中 $A$ 说:不是我。$B$ 说:是 $C$ 。$C$ 说:是 $D$ 。$D$ 说:$C$ 瞎说,请问谁是小偷( )。

15

下列程序输出的是()

string str = "Hello,CHAD";
cout << str.find("A") << '\n';

判断题(共 10 题,每题 2 分)

16

$+1$ 和 $-1$ 的原码进行 $1 + (-1)$ 计算的结果是 $-2$。( )

17

~1 的输出值是 $-2$。( )

18

~1 = 1111 1110。( )

19

取 $X$ 的低四位,可以用 $Y = 0000\ 1111$,用 X & Y 获取 $X$ 的低四位。( )

20

下列程序输出的是 A。( )

char x=65;
x++;
cout<<x++<<endl;
21

下列程序输出的是 $3$。( )

string str="CHADai";
size_t pos = str.find('D');
cout<<pos<<endl;
22

下列程序将输出 $1$。( )

int a[10]={1};
cout<<a[1]<<endl;
23

下列程序将输出 A。( )

int a=65;
cout<<(char)a<<endl;
24

16 进制数 AB,表示成 2 进制数是 10101011。( )

25

def(十六进制) = 103231(五进制)。( )

编程操作题(共 2 题,共 50 分)

26
编程操作题 25分

试题名称:平衡序列

时间限制:1.0 s | 内存限制:512.0 MB

题目描述

小杨有一个包含 $n$ 个正整数的序列 $a$。他认为一个序列是平衡的当且仅当存在一个正整数 $i$($1 \leq i < n$)使得序列第 $1$ 到第 $i$ 个数字的总和等于第 $i + 1$ 到第 $n$ 个数字的总和。

小杨想请你判断序列 $a$ 是否是平衡的。

输入格式

本题单个测试点内包含多组测试数据。第一行是一个正整数 $t$,表示测试用例组数。

接下来是 $t$ 组测试用例。对每组测试用例,一共两行。

第一行包含一个正整数 $n$,表示序列长度。
第二行包含 $n$ 个正整数,代表序列 $a$。

输出格式

对每组测试用例输出一行一个字符串。如果 $a$ 是平衡的,输出 $\texttt{Yes}$,否则输出 $\texttt{No}$。

样例输入 #1

3
3
1 2 3
4
2 3 1 4
5
1 2 3 4 5

样例输出 #1

Yes
Yes
No

说明/提示

样例 1 解释

  • 对第一组测试用例,令 $i = 2$,有 $1 + 2 = 3$,因此序列是平衡的。
  • 对第二组测试用例,令 $i = 2$,有 $2 + 3 = 1 + 4$,因此序列是平衡的。
  • 对第三组测试用例,不存在满足要求的 $i$。

数据规模与约定

对全部的测试数据,保证 $1 \leq t \leq 100$,$1 \leq n, a_i \leq 10000$。

27
编程操作题 25分

试题名称:回文拼接

时间限制:1.0 s | 内存限制:512.0 MB

题目描述

一个字符串是回文串,当且仅当该字符串从前往后读和从后往前读是一样的,例如,$\texttt{aabaa}$ 和 $\texttt{ccddcc}$ 都是回文串,但 $\texttt{abcd}$ 不是。

小杨有 $n$ 个仅包含小写字母的字符串,他想请你编写程序判断每个字符串是否由两个长度至少为 $2$ 的回文串前后拼接而成。

输入格式

第一行包含一个正整数 $n$,代表字符串数量。
接下来 $n$ 行,每行一个仅包含小写字母的字符串。

输出格式

对于每个字符串输出一行,如果该字符串由两个长度至少为 $2$ 的回文串前后拼接而成则输出 Yes,否则输出 No。

样例输入 #1

4
abcd
aabbb
aaac
abcdd

样例输出 #1

No
Yes
No
No

说明/提示

样例 1 解释

对于第 $1,3,4$ 个字符串,都不是由两个长度至少为 $2$ 的回文串前后拼接而成。
第 $2$ 个字符串由回文串 $\texttt{aa}$ 和 $\texttt{bbb}$ 前后拼接而成,并且两个回文串长度都至少为 $2$。

数据规模与约定

对全部的测试数据,保证 $1 \leq n \leq 10$,且每个字符串的长度均不超过 $100$。

已答 0/27