乐于分享
好东西不私藏

CSP-J2024 试题知识点·上

CSP-J2024 试题知识点·上

CSP-J 2024 知识点精讲(上篇)

2024 年 CSP-J 入门级第一轮笔试共 15 道单项选择题,每题 2 分,合计 30 分。本篇文章对第 1-15 题逐题拆解,并归纳出核心知识点清单,帮助同学们在备考时精准定位薄弱环节。


一、2024 年选择题知识点总览

题号
考查主题
对应知识点
1
整数表示范围
32 位有符号整数、补码表示
2
进制转换
八进制、二进制、十六进制转十进制
3
组合计数
分类讨论、组合数 C(n,k)
4
编码理论
格雷码(Gray Code)
5
存储单位换算
Byte / bit / KB / MB 关系
6
C++ 基础
基本数据类型 vs 自定义复合类型
7
C++ 基础
循环语句:for / while / do-while
8
字符编码
ASCII 码、字符运算
9
算法分析
二分查找时间复杂度
10
计算机常识
操作系统 vs 应用软件
11
图论基础
无向图顶点度数之和
12
数据结构
二叉树前序、中序、后序遍历
13
数据结构
栈的入栈/出栈合法性判断
14
排列组合
捆绑法处理相邻问题
15
计算机系统
编译器作用

二、逐题精讲

第 1 题:32 位 int 的存储范围

答案:C. -2147483648 ~ +2147483647

核心知识点:补码表示

32 位有符号整数使用二进制补码存储,最高位为符号位。

  • 最小值:1000...000(31 个 0) = -2³¹ = -2147483648
  • 最大值:0111...111(31 个 1) = 2³¹ - 1 = 2147483647

备考建议:熟记 8/16/32/64 位有符号整数范围,考试中常以不同形式出现。


第 2 题:多进制混合运算

答案:A. 13

题目:(148 − 1010₂) × D₁₆ − 1101₂

解题步骤:

  1. 14₈
     = 1×8 + 4 = 12
  2. 1010₂
     = 8 + 2 = 10
  3. D₁₆
     = 13
  4. 1101₂
     = 8 + 4 + 1 = 13
  5. 原式 = (12 - 10) × 13 - 13 = 2 × 13 - 13 = 13

核心知识点:进制转换基本功

  • 二进制:逢 2 进 1
  • 八进制:逢 8 进 1,每 3 位二进制对应 1 位八进制
  • 十六进制:逢 16 进 1,每 4 位二进制对应 1 位十六进制

备考建议:考前反复练习 2/8/10/16 进制互转,做到心算不出错。


第 3 题:组合计数

答案:B. 126

题目:从 A(4 人)、B(3 人)、C(3 人) 三个部门中选 4 人,每个部门至少 1 人。

核心思想:分类讨论

由于共选 4 人且每部门至少 1 人,必然是一个部门出 2 人,另两个部门各出 1 人。

  • A 出 2,B、C 各出 1:C(4,2) × C(3,1) × C(3,1) = 6 × 3 × 3 = 54
  • B 出 2,A、C 各出 1:C(3,2) × C(4,1) × C(3,1) = 3 × 4 × 3 = 36
  • C 出 2,A、B 各出 1:C(3,2) × C(4,1) × C(3,1) = 3 × 4 × 3 = 36

合计:54 + 36 + 36 = 126

备考建议:遇到"至少"问题,先确定分类标准,避免重复或遗漏。


第 4 题:格雷码

答案:D. 0000, 0001, 0011, 0010, 0110, 0111, 0101, 0100

核心知识点:格雷码定义

格雷码是一种相邻两个数只有一位二进制位不同的编码方式。

验证选项 D:

0000 → 0001(第 4 位不同) 0001 → 0011(第 3 位不同) 0011 → 0010(第 4 位不同) 0010 → 0110(第 2 位不同) 0110 → 0111(第 4 位不同) 0111 → 0101(第 3 位不同) 0101 → 0100(第 4 位不同) 

每一对相邻数字都只有一位不同。

备考建议:记住格雷码的核心特征——"相邻仅一位变",考试时逐对验证即可。


第 5 题:存储单位换算

答案:D. 8388608

换算关系:

  • 1 Byte = 8 bit
  • 1 KB = 1024 Byte
  • 1 MB = 1024 KB

所以:

1 MB = 1024 × 1024 × 8 bit = 8,388,608 bit 

备考建议:区分大写 B(Byte,字节)和小写 b(bit,位),这是初赛常考陷阱。


第 6 题:C++ 基本数据类型

答案:C. struct

核心知识点:

C++ 基本数据类型包括:intfloatdoublecharbool 等。

struct 是用户自定义的复合数据类型,用于将多个数据组合在一起。

备考建议:区分"基本类型"与"自定义类型",避免概念混淆。


第 7 题:C++ 循环语句

答案:D. repeat-until

核心知识点:

C++ 支持的循环语句:

  • for
     循环
  • while
     循环
  • do-while
     循环

repeat-until 是 Pascal、Lua 等语言中的循环结构,C++ 不支持

备考建议:了解常见编程语言基本语法差异。


第 8 题:ASCII 码运算

答案:B. 'n'

解题过程:

  • 'a' 的 ASCII 码为 97
  • 97 + 13 = 110
  • ASCII 码 110 对应字符 'n'

备考建议:熟记常见字符 ASCII 码:a=97,A=65,0=48。


第 9 题:二分查找复杂度

答案:B. 10

核心知识点:二分查找每次将搜索范围减半

需要找到最小的 n,使得 2ⁿ > 1000。

2^10 = 1024 > 1000 

所以最多需要 10 次比较。

备考建议:熟记二分查找时间复杂度 O(log n),能快速估算比较次数。


第 10 题:操作系统识别

答案:A. Notepad

核心知识点:

  • 操作系统:Windows、macOS、Linux、Android、iOS 等
  • 应用软件:Notepad(记事本)、Word、Photoshop 等

备考建议:掌握常见系统软件与应用软件的区别。


第 11 题:无向图度数之和

答案:B. 图的边数的两倍

核心知识点:

在无向图中,每条边连接两个顶点,为这两个顶点的度数各贡献 1。

因此,所有顶点的度数之和 = 2 × 边数。

备考建议:这是图论中的握手定理,初赛高频考点。


第 12 题:二叉树遍历

答案:A. [D, E, B, F, G, C, A]

核心知识点:由前序+中序重构二叉树

  • 前序:[A, B, D, E, C, F, G] → 第一个元素 A 是根节点
  • 中序:[D, B, E, A, F, C, G] → A 左边是左子树,右边是右子树

递归拆分即可得到二叉树结构,再后序遍历得到答案。

备考建议:掌握"前序找根、中序分左右"的重构方法。


第 13 题:栈操作合法性

答案:D. 1 3 5 2 4 6

核心思想:模拟栈操作

  • 选项 A:全部入栈后全部出栈,可以实现
  • 选项 B:1 入栈出栈,其余依次入栈后出栈,可以实现
  • 选项 C:通过合理安排入栈出栈顺序,可以实现
  • 选项 D:当 1、3、5 出栈后,栈内从底到顶为 2、4、6,此时 2 不可能在 5 之后出栈

备考建议:遇到栈合法性判断,耐心用一张纸模拟入栈出栈过程。


第 14 题:排列组合——捆绑法

答案:A. 4320

核心思想:相邻元素捆绑为一个整体

  • 将 3 个女生捆绑为 1 个"大元素",与 5 个男生共 6 个元素排列:6! = 720
  • 3 个女生内部可互换:3! = 6
  • 总排列数:720 × 6 = 4320

备考建议:"必须相邻"用捆绑法,"不能相邻"用插空法。


第 15 题:编译器作用

答案:B. 将源代码转换为机器代码

核心知识点:

  • 编译器
    :将高级语言源代码翻译成机器可执行代码
  • 解释器
    :逐行解释执行源代码
  • 调试器
    :用于代码调试
  • 操作系统
    :管理程序运行时资源

备考建议:理解编译型语言与解释型语言的基本区别。


三、上篇知识点清单(建议收藏)

1. 计算机基础

  • 整数补码表示与取值范围
  • 二进制、八进制、十进制、十六进制互转
  • 存储单位换算(bit / Byte / KB / MB)
  • ASCII 码常见值
  • 操作系统与应用软件区分
  • 编译器作用

2. C++ 基础

  • 基本数据类型:int、float、double、char、bool
  • 复合数据类型:struct、数组
  • 循环语句:for、while、do-while
  • 字符运算与 ASCII 码转换

3. 算法与数据结构

  • 二分查找时间复杂度 O(log n)
  • 栈的基本操作与合法性判断
  • 二叉树三种遍历(前序、中序、后序)及重构
  • 无向图度数与边数关系

4. 数学与组合

  • 组合数计算 C(n,k)
  • 分类讨论思想
  • 排列问题:捆绑法、插空法
  • 格雷码相邻特性

四、备考建议

  1. 选择题部分性价比极高
    :15 题 30 分,是拉开差距的关键。
  2. 基础知识要形成条件反射
    :进制转换、ASCII 码、存储单位等必须做到秒算。
  3. 图论和树是每年必考
    :重点掌握遍历、度数、边数关系。
  4. 组合数学要善于分类
    :遇到"至少""相邻"等关键词,立刻想到对应方法。

下篇预告:CSP-J 2024 阅读程序题(第 16-26 题)精讲,重点剖析素数算法、动态规划(上楼梯最小花费)以及程序阅读技巧。