选择题 共15道

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15


判断题 共10道

16 17 18 19 20 21 22 23 24 25


编程题 共2道

26 27

E1098 2026-06 CCF-GESP C++八级真题-练习

选择题 共15道
01

从 7 本不同的算法书和 5 本不同的数学书中选出 4 本,要求两类书都至少选 1 本,共有( )种不同选法。

2分
登录后查看选项
02

6 个人排成一排照相,其中甲、乙两人不能相邻,共有( )种不同排法。

2分
登录后查看选项
03

展开式 (x2-1/x)6 中,常数项的系数为( )。

2分
登录后查看选项
04

下面代码用于预处理组合数,横线处应填入的是( )。

for (int i = 0; i <= n; i++) {
	c[i][0] = c[i][i] = 1;
	for (int j = 1; j < i; j++)
		c[i][j] = __________;
}
2分
登录后查看选项
05

下列程序输出的值为( )。

#include <iostream>
using namespace std;
long long qpow(long long a, long long b, long long mod) {
	long long ans = 1 % mod;
	while (b) {
		if (b & 1)
			ans = ans * a % mod;
		a = a * a % mod;
		b >>= 1;
	}
	return ans;
}
int main() {
	cout << qpow(3, 20, 17) << endl;
	return 0;
}
2分
登录后查看选项
06

归并排序每次把长度为 n 的序列分成两个规模约为 n/2 的子序列,递归排序后再用线性时间合并。该算法的时间复杂度通常为( )。

2分
登录后查看选项
07

在平面直角坐标系中,三角形三个顶点为 A(1,1)、B(5,2)、C(3,6),该三角形面积为( )。

2分
登录后查看选项
08

某程序需要判断点 P(x,y) 是否在以原点为圆心、半径为 5 的圆内或圆上。下列判断条件正确的是( )。

2分
登录后查看选项
09

某无向带权图有边(1,2,4)、(1,3,2)、(2,3,1)、(2,4,5)、(3,4,8)、(3,5,10)、(4,5,2)。该图最小生成树的总权值为( )。

2分
登录后查看选项
10

有向非负权图边为1→2(3)、2→4(4)、1→3(10)、3→4(1)、2→3(2)。使用 Dijkstra 算法从 1 号顶点出发到 4 号顶点的最短距离为( )。

2分
登录后查看选项
11

下列代码片段的时间复杂度为( )。

long long s = 0;
for (int i = 1; i <= n; i++) {
	for (int j = 1; j * j <= n; j++) {
		s += i + j;
	}
}
2分
登录后查看选项
12

某优化问题的答案是 [1,M] 内的整数,存在单调判定函数 check(x) ,且每次判定的时间复杂度为 O(n)。使用二分答案求最小可行值,整体时间复杂度通常为( )。

2分
登录后查看选项
13

下列线性筛的代码片段中,当枚举到质数 p 且 i % p == 0 时,使用 break; 语句停止继续枚举。这样做的主要目的是( )。

for (int i = 2; i <= n; ++i) {
	if (!is_composite[i])
		primes.push_back(i);
	for (int p : primes) {
		if (i * p > n)
			break;
		is_composite[i * p] = true;
		if (i % p == 0)
			break; // 这条语句的目的是?
	}
}
2分
登录后查看选项
14

在 C++ 中,关于类的继承和构造、析构顺序,下列说法正确的是( )。

2分
登录后查看选项
15

将 4 个元素按 1,2,3,4 的顺序入栈,在该过程中可随时插入出栈操作。下列序列中不可能作为出栈序列的是( )。

2分
登录后查看选项
判断题 共10道
16

若一项任务可从两种互斥的方案中选择一种完成,其中,方案 A 有 m种做法,方案 B 有 n 种做法,则总做法数为 m+n。

2分
登录后查看选项
17

将 n 个不同元素围成一圈,若只把旋转视为同一种排法、翻转仍视为不同排法,则方案数为 (n-1)!。

2分
登录后查看选项
18

从 n 个不同元素中可重复地选取 k 个且不考虑顺序,方案数为 C(n+k, k)。

2分
登录后查看选项
19

杨辉三角中的组合数满足 C(n,k) = C(n-1,k)+C(n-2,k)。

2分
登录后查看选项
20

快速幂通过二进制拆分指数,可以在 O(log b) 时间内计算 ab mod m。

2分
登录后查看选项
21

只要图中不存在负权环,Dijkstra 算法就一定能正确处理带负权边的图。

2分
登录后查看选项
22

若一张连通无向图所有边权两两不同,则它的最小生成树一定唯一。

2分
登录后查看选项
23

判断点 (x,y) 是否在以原点为圆心、半径为 r 的圆内或圆上时,可以比较 x2+y2 与 r2,不必先开平方。

2分
登录后查看选项
24

若能写出判定函数 check(x) ,表示“答案为 x 时是否可行”,即使 check(x) 不满足单调性,也一定可以使用二分答案求最优解。

2分
登录后查看选项
25

归并排序是一种稳定排序算法,常见实现的时间复杂度为 O(n log n)。

2分
登录后查看选项
编程题 共2道
26

25分
登录后作答
27

25分
登录后作答