202412 CCF-GESP编程能力等级认证C++八级真题 建议答题时长:60min
1. 单选题

小杨家响应国家“以旧换新”政策,将自家的汽油车置换为新能源汽车,正在准备自编车牌。自编车牌包括5位数字或英文字母,要求第5位必须是数字,前4位中可以有最多1位英文字母。英文字母必须是大写,而且不能是O或I(因为容易与数字0或1混淆)。请问自编车牌共有多少种可能性?( )。

A

100,000

B

1,060,000

C

1,360,000

D

1,460,000

2. 单选题

新年到,四家人在一起聚会。其中两家有三口人,另外两家有两口人。现在要安排大家在一张十人圆桌坐下,要求一家人必须相邻就座。由于有“主座”的习俗,每个座位都被认为是不同的。请问共有多少种就座方案?()。

A

8640

B

6912

C

144

D

60

3. 单选题

下面关于C++类继承的说法,错误的是( )。

A

一个类可以继承多个类。

B

一个类可以被多个类继承。

C

一个类可以继承另一个类的子类。

D

抽象类必须被至少一个类继承,否则会编译错误。

4. 单选题

使用邻接表表达一个简单有向图,图中包含 v 个顶点、 e 条边,则该出边表中边节点的个数为( )。

A

v×(v-1)

B

v×v

C

2×e

D

e

5. 单选题

以下将二维数组作为参数的函数声明,哪个是符合语法的?( )。

A

void Bubble(int a[10][], int m);

B

void Bubble(int a[][], int n, int m);

C

void Bubble(int (*a)[20], int n);

D

void Bubble(int * a[20], int n);

6. 单选题

已知两个点 A 、 B 在平面直角坐标系下的坐标分别为 (xa,ya)和(xb,yb) ,并分别定义变量 double xa, ya,xb, yb; 存储坐标。假设直线 AB 的斜率存在,下列哪个表达式可以用来表达它?( )

A

(xa - xb) / (ya - yb)

B

(xa - xb) / (yb - ya)

C

(ya - yb) / (xa - xb)

D

(ya - yb) / (xb - xa)

7. 单选题

二项式的展开式中项的系数是( )。

A

6

B

15

C

20

D

120

8. 单选题

以下关于动态规划的说法中,错误的是( )。

A

动态规划方法有递推和递归两种实现形式。

B

递归实现动态规划方法的时间复杂度总是不低于递推实现。

C

动态规划方法将原问题分解为一个或多个相似的子问题。

D

动态规划方法通常能够列出递推公式。

9. 单选题

 

在下面的程序中,使用整数表示一种组合。整数二进制表示的某一位为1,表示该位对应的数被选中,反之为0表示未选中。例如,从 0 - 5 这 6 个数中选出 3 个,则 0b111000 代表选中 3, 4, 5 三个数, 0b011001 代表选中 0, 3, 4 三个数。 zuhe_next 函数按组合对应的整数由大到小的顺序,求出组合 c 的下一个组合。横线处可以填入的是( )。

A

((c - 1) ^ c)

B

(((c - 1) ^ c) + 1)

C

(((c - 1) ^ c) >> 1)

D

((((c - 1) ^ c) + 1) >> 1)

10. 单选题

下面程序的输出为( )。

A

174

B

447

C

816

D

4096

11. 单选题

下面最长公共子序列程序中,横线处应该填入的是( )。

A

dp[i + 1][j + 1] = dp[i][j + 1] + dp[i + 1][j]

B

dp[i + 1][j + 1] = MIN(dp[i][j + 1], dp[i + 1][j])

C

dp[i + 1][j + 1] = MAX(dp[i][j + 1], dp[i + 1][j])

D

dp[i + 1][j + 1] = MAX(dp[i][j + 1], dp[i + 1][j]) + 1

12. 单选题

 

下列Dijkstra算法中,横线处应该填入的是( )。

A

B

C

D

13. 单选题

假设图graph中顶点数v、边数e,上题程序的时间复杂度为( )。

A

B

C

D

14. 单选题

下面的快速排序程序中,两处横线处分别应填入的是( )。

A

B

C

D

15. 单选题

上题程序的时间复杂度为( )。

A

B

C

D

16. 判断题

表达式 '3' + '5' 的结果为 '8' ,类型为 char 。

A

B

17. 判断题

在C++语言中,可以在函数内定义结构体,但该结构体类型只能在该函数内使用。

A

B

18. 判断题

对 n个元素的数组进行排序,快速排序和归并排序的平均时间复杂度都为。但快速排序存在退化情况,使得时间复杂度升高至;归并排序需要额外的空间开销。

A

B

19. 判断题

二维数组的最后一维在内存中一定是连续的,但第一维在内存中可能不连续。

A

B

20. 判断题

使用 math.h 或 cmath 头文件中的函数,表达式 log(1000) 的结果类型为 double 、值约为 3 。

A

B

21. 判断题

你有三种硬币,分别面值2元、5元和7元,每种硬币都有足够多。买一本书需要27元,则有8种硬币组合(组合与顺序无关,“1个2元+1个5元+1个2元”与“1个5元+2个2元”认为是同样的组合)可以正好付清,且不需要对方找钱。

A

B

22. 判断题

使用哈希函数 f(x) = x % p 建立键值为 int 类型的哈希表,只要 p 取小于等于哈希表大小的素数,可保证不发生碰撞。

A

B

23. 判断题

杨辉三角中的第 n行、第m 项,即为将二项式展开后项的系数。

A

B

24. 判断题

判断图是否连通,可以通过广度优先搜索实现。

A

B

25. 判断题

要求解一元二次方程,需要先判断表达式 a ^ 2 - b * 4 >= 0 是否为真。

A

B

26. 编程题

树上移动

查看答案
27. 编程题

排队

查看答案
试题目录
单选题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
判断题
16 17 18 19 20 21 22 23 24 25
编程题
26 27
赣ICP备20007335号-2