CCF GESP 2024年6月认证 C++ 8级

单选题
共 15 道 每题 2 分 共计 30 分
第 1 题
GESP 活动期间,举办方从获胜者 ABCDE 五个人中选出三个人排成一队升国旗,其中 A 不能排在队首,请问有多少种排法?
A
$24$
B
$48$
C
$32$
D
$12$
第 2 题
$7$ 进制数 $235$ 转换成 $3$ 进制数是( )。
A
$11121$
B
$11122$
C
$11211$
D
$11112$
第 3 题
$0,1,2,3,4,5$ 这些数字组成一个三位数,请问没有重复数字的情况下,有多少种组法( )。
A
$180$
B
$120$
C
$80$
D
$100$
第 4 题
有 $V$ 个顶点、$E$ 条边的图的深度优先搜索遍历时间复杂度为( )。
A
$O(V)$
B
$O(E)$
C
$O(V + E)$
D
$O(\log(V + E))$
第 5 题
一对夫妻生男生女的概率相同。已知这对夫妻有两个孩子,其中一个是女孩,另一个是男孩的概率是多少?
A
$\frac{2}{3}$
B
$\frac{1}{4}$
C
$\frac{1}{2}$
D
$\frac{1}{3}$
第 6 题

从 $1$ 到 $2024$ 这 $2024$ 个数中,共有( )个包含数字 $6$ 的数。

A

$544$

B

$546$

C

$564$

D

$602$

第 7 题
二进制数 $100.001$ 转换成十进制数是( )。
A
$4.25$
B
$4.125$
C
$4.5$
D
$4.75$
第 8 题
以下函数声明,哪个是符合 C++ 语法的?( )。
A
void BubbleSort(char a[][], int n);
B
void BubbleSort(char a[][20], int n);
C
void BubbleSort(char a[10][], int n);
D
void BubbleSort(char[,] a, int n);
第 9 题
下面有关 C++ 重载的说法,错误的是( )。
A
两个参数个数不同的函数可以重名。
B
两个参数类型不同的函数可以重名。
C
两个类的方法可以重名。
D
所有 C++ 运算符均可以重载。
第 10 题
小于或等于给定正整数 $n$ 的数中,与 $n$ 互质的数的个数,我们称为欧拉函数,记作 $\phi(n)$。下面说法错误的是( )。
A
如果 $n$ 是质数,那么 $\phi(n) = n - 1$。
B
两个质数一定是互质数。
C
两个相邻的数一定是互质数。
D
相邻的两个质数不一定是互质数。
第 11 题
已知一棵二叉树有 $10$ 个节点,则其中至多有( )个节点有 $2$ 个子节点。
A
$4$
B
$5$
C
$6$
D
$3$
第 12 题
二项展开式 $(x + y)^n = x^n + n x^{n-1} y + \frac{n(n-1)}{2} x^{n-2} y^2 + \ldots + y^n$ 的系数,正好满足杨辉三角的规律。当 $n = 10$ 时,二项式展开式中 $x y^9$ 项的系数是( )。
A
$5$
B
$9$
C
$10$
D
$8$
第 13 题
下面程序的时间复杂度为( )。
bool notPrime[N] = {false};
void sieve() {
    for (int n = 2; n * n < N; n++)
        if (!notPrime[n])
            for (int i = n * n; i < N; i += n)
                notPrime[i] = true;
}
A
$O(N)$
B
$O(N \times \log N)$
C
$O(N \times \log \log N)$
D
$O(N^2)$
第 14 题

下面程序的最差时间复杂度为( )。

int gcd(int m, int n) {
    if (m == 0)
        return n;
    return gcd(n % m, m);
}
A

$O(\sqrt{n})$

B

$O(\log(n))$

C

$O(n)$

D

$O(1)$

第 15 题
下面程序的输出为( )。
#include <iostream>
using namespace std;
int main() {
    int cnt = 0;
    for (int x = 0; x <= 10; x++)
        for (int y = 0; y <= 10; y++)
            for (int z = 0; z <= 10; z++)
                if (x + y + z <= 15)
                    cnt++;
    cout << cnt << endl;
    return 0;
}
A
$90$
B
$91$
C
$710$
D
$711$
单选题部分已到底了。