林老师 · 客观题题库 · CSP-J 2024 · 入门级第一轮真题

CSP-J 2024 · 入门级第一轮真题

2024 CCF CSP-J(入门级)第一轮 · 客观题真题 · 满分 100 分
真题
复刻
试卷编号OBJ-840482
题目总数20 题 · 100.0 分
试卷类型客观题
考生须知:
① 本卷为客观题单卷,合计 20 题 · 100.0 分,全部为客观题;
② 试卷右上角设有 「提交答卷」「重置考试」 按钮,提交后系统自动判分并显示答题正确情况,请确认全部作答后再行提交;
③ 试卷不显示答案,提交后方可查看每题作答与正确答案的对照;
④ 答卷进度会保留在本地缓存中,刷新或再次打开仍可继续作答;
⑤ 本卷仅供学生练习使用;请勿用于其他用途;题面有问题请联系:i64coder@163.com。

判 分 报 告

0 / 100.0 分
0
答 对 · 得 0
0
答 错 · 失 0
当前筛选下没有题目

客 观 题

20 QUESTIONS · 2 POINTS EACH
第 1 题 单选 未作答

32 位 int 类型的存储范围是?( )

(2 分)
CSP-J 2024 · 单选 第1题 | 知识点 存储单位换算、整型
第 2 题 单选 未作答

计算 (14810102)×D1611012(14_{8} − 1010_{2}) \times D_{16} − 1101_{2} 的结果,并选择答案的十进制值:( )

(2 分)
CSP-J 2024 · 单选 第2题 | 知识点 二进制、十六进制、进制运算
第 3 题 单选 未作答

某公司有 10 名员工,分为 3 个部门:A 部门有 4 名员工、B 部门有 3 名员工、C 部门有 3 名员工。现需要从这 10 名员工中选出 4 名组成一个工作小组,且每个部门至少要有 1 人。 问有多少种选择方式?( )

(2 分)
CSP-J 2024 · 单选 第3题 | 知识点 杨辉三角、威尔逊定理
第 4 题 单选 未作答

以下哪个序列对应数字 0 至 8 的 4 位二进制格雷码(Gray code)?( )

(2 分)
CSP-J 2024 · 单选 第4题 | 知识点 二进制、八进制
第 5 题 单选 未作答

11 KB 为 10241024 字节(byte)、11 MB 为 10241024 KB,那么 11 MB 是多少二进制位(bit)?( )

(2 分)
CSP-J 2024 · 单选 第5题 | 知识点 存储单位换算、二进制
第 6 题 单选 未作答

以下哪个不是 C++中的基本数据类型?( )

(2 分)
CSP-J 2024 · 单选 第6题 | 知识点 位异或、整型
第 7 题 单选 未作答

以下哪个不是 C++中的循环语句?( )

(2 分)
CSP-J 2024 · 单选 第7题 | 知识点 逻辑运算、算术运算、关系运算
第 8 题 单选 未作答

在 C/C++ 中,(char)('a'+13) 与下面的哪一个值相等?( )

(2 分)
CSP-J 2024 · 单选 第8题 | 知识点 字符型、字符型、字符型
第 9 题 单选 未作答

假设有序表中有 1000 个元素,则用二分法查找元素 X 最多需要比较( )次。

(2 分)
CSP-J 2024 · 单选 第9题 | 知识点 剪枝、排序稳定性
第 10 题 单选 未作答

下面的哪一个不是操作系统名字?( )

(2 分)
CSP-J 2024 · 单选 第10题 | 知识点 Linux与常用命令、文件与目录
第 11 题 单选 未作答

在无向图中,所有顶点的度数之和等于( )。

(2 分)
CSP-J 2024 · 单选 第11题 | 知识点 邻接矩阵、邻接表
第 12 题 单选 未作答

已知二叉树的前序遍历为 [A, B, D, E, C, F, G],中序遍历为 [D, B, E, A, F, C, G],请问该二叉树的后序遍历结果是?( )

(2 分)
CSP-J 2024 · 单选 第12题 | 知识点 二叉树概念、二叉树概念、二叉树概念
第 13 题 单选 未作答

给定一个空栈,支持入栈和出栈操作。若入栈操作的元素依次是 1 2 3 4 5 6,其中 1 最先入栈、6 最后入栈,下面哪种出栈顺序是不可能的?( )

(2 分)
CSP-J 2024 · 单选 第13题 | 知识点 栈、栈的应用
第 14 题 单选 未作答

55 个男生和 33 个女生站成一排,规定 33 个女生必须相邻。问有多少种不同的排列方式? ( )

(2 分)
CSP-J 2024 · 单选 第14题 | 知识点 排列、插空法
第 15 题 单选 未作答

编译器的主要作用是什么?( )

(2 分)
CSP-J 2024 · 单选 第15题 | 知识点 C++程序结构、Linux与常用命令
第 16~20 题 阅读程序 (共 10.5 分) 未作答

1  #include <iostream>
2  using namespace std;
3 
4  bool isPrime(int n) {
5    if (n <= 1) {
6      return false;
7    }
8    for (int i = 2; i * i <= n; i++) {
9      if (n % i == 0) {
10        return false;
11      }
12    }
13    return true;
14  }
15 
16  int countPrimes(int n) {
17    int count = 0;
18    for (int i = 2; i <= n; i++) {
19      if (isPrime(i)) {
20        count++;
21      }
22    }
23    return count;
24  }
25 
26  int sumPrimes(int n) {
27    int sum = 0;
28    for (int i = 2; i <= n; i++) {
29      if (isPrime(i)) {
30        sum += i;
31      }
32    }
33    return sum;
34  }
35 
36  int main() {
37    int x;
38    cin >> x;
39    cout << countPrimes(x) << " " << sumPrimes(x) << endl;
40    return 0;
41  }

16.

当输入为 10 时,程序的第一个输出为 4,第二个输出为 17。( )

(1.5 分)
17.

若将 isPrime(i) 函数中的条件改为 i <= n / 2,输入 20 时,countPrimes(20) 的输出将变为 6。( )

(1.5 分)
18.

sumPrimes 函数计算的是从 22nn 之间的所有素数之和。( )

(1.5 分)
19.

当输入为 50 时,sumPrimes(50) 的输出为( )。

(3 分)
20.

如果将 for (int i = 2; i * i <= n; i++) 改为 for (int i = 2; i <= n; i++),输入 10 时,程序的输出( )。

(3 分)
CSP-J 2024 · 阅读程序 第16-20题 | 知识点 差分、模拟
第 21~26 题 阅读程序 (共 15 分) 未作答

1  #include <iostream>
2  #include <vector>
3  using namespace std;
4 
5  int compute(vector<int>& cost) {
6    int n = cost.size();
7    vector<int> dp(n+1, 0);
8    dp[1] = cost[0];
9    for (int i = 2; i <= n; i++) {
10      dp[i] = min(dp[i-1], dp[i-2]) + cost[i-1];
11    }
12    return min(dp[n], dp[n-1]);
13  }
14 
15  int main() {
16    int n;
17    cin >> n;
18    vector<int> cost(n);
19    for (int i = 0; i < n; i++) {
20      cin >> cost[i];
21    }
22    cout << compute(cost) << endl;
23    return 0;
24  }

21.

当输入的 cost 数组为 {10, 15, 20} 时,程序的输出为 15。( )

(1.5 分)
22.

如果将 dp[i-1] 改为 dp[i-3],程序可能会产生编译错误。( )

(1.5 分)
23.

程序总是输出 cost 数组中最小的元素。( )

(2 分)
24.

当输入的 cost 数组为 {1, 100, 1, 1, 1, 100, 1, 1, 100, 1} 时,程序的输出为( )。

(3 分)
25.

如果输入的 cost 数组为 {10, 15, 30, 5, 5, 10, 20},程序的输出为( )。

(4 分)
26.

若将代码中的 min(dp[i-1], dp[i-2]) + cost[i-1] 修改为 dp[i-1] + cost[i-2],输入 cost 数组为 {5, 10, 15} 时,程序的输出为( )。

(3 分)
CSP-J 2024 · 阅读程序 第21-26题 | 知识点 插入排序、数组越界
第 27~32 题 阅读程序 (共 14.5 分) 未作答

1  #include <iostream>
2  #include <cmath>
3  using namespace std;
4 
5  int customFunction(int a, int b) {
6    if (b == 0) {
7      return a;
8    }
9    return a + customFunction(a, b-1);
10  }
11 
12  int main() {
13    int x, y;
14    cin >> x >> y;
15    int result = customFunction(x, y);
16    cout << pow(result, 2) << endl;
17    return 0;
18  }

27.

当输入为 2 3 时,customFunction(2, 3) 的返回值为 64。( )

(1.5 分)
28.

b 为负数时,customFunction(a, b) 会陷入无限递归。( )

(1.5 分)
29.

b 的值越大,程序的运行时间越长。( )

(1.5 分)
30.

当输入为 5 4 时,customFunction(5, 4) 的返回值为( )。

(3 分)
31.

如果输入 x=3x=3y=3y=3,则程序的最终输出为( )。

(3 分)
32.

若将 customFunction 函数改为 return a + customFunction(a-1, b-1);,并输入 3 3,则程序的最终输出为( )。

(4 分)
CSP-J 2024 · 阅读程序 第27-32题 | 知识点 归并排序、do-while循环
第 33~37 题 完善程序 (共 15 分) 未作答

试补全程序。

1  #include<iostream>
2  #include<vector>
3  using namespace std;
4 
5  bool isSquare(int num) {
6    int i = ① ;
7    int bound = ② ;
8    for (; i <= bound; ++i) {
9      if ( ③ ) {
10        return ④ ;
11      }
12    }
13    return ⑤ ;
14  }
15  int main() {
16    int n;
17    cin >> n;
18    if (isSquare(n)) {
19      cout << n << " is a square number" << endl;
20    } else {
21      cout << n << " is not a square number" << endl;
22    }
23    return 0;
}

33.

①处应填( )

(3 分)
34.

②处应填( )

(3 分)
35.

③处应填( )

(3 分)
36.

④处应填( )

官方答案标注为 C(A 也算正确)。

(3 分)
37.

⑤处应填( )

(3 分)
CSP-J 2024 · 完善程序 第33-37题 | 知识点 do-while循环、模拟
第 38~42 题 完善程序 (共 15 分) 未作答

试补全程序。

1  #include <iostream>
2  #include <vector>
3  using namespace std;
4 
5  void move(char src, char tgt) {
6    cout << "从柱子" << src << "挪到柱子" << tgt << endl;
7  }
8  void dfs(int i, char src, char tmp, char tgt) {
9    if (i == ① ) {
10      move( ② );
11      return;
12    }
13    dfs(i - 1, ③ );
14    move(src, tgt);
15    dfs( ⑤ , ④ );
16  }
17 
18  int main() {
19    int n;
20    cin >> n;
21    dfs(n, 'A', 'B', 'C');
22  }

38.

①处应填( )

(3 分)
39.

②处应填( )

(3 分)
40.

③处应填( )

(3 分)
41.

④处应填( )

(3 分)
42.

⑤处应填( )

(3 分)
CSP-J 2024 · 完善程序 第38-42题 | 知识点 归并排序、归并排序