Level 2 · CSP-J 笔试

阅读程序题型与解法

考的是读懂别人代码。三招稳拿分:模拟执行、找线索、从选项倒推。

一、三招通用解法

① 模拟计算

拿草稿纸列变量表,像 CPU 一样一行行跑,记录每个变量怎么变。主力招

② 找线索猜本质

先看代码在算什么(求和?素数?),识别算法本质,预判结果。

③ 从选项倒推

选择题可代入选项反推,位运算 / 数学题尤其好用。

二、互动演示:当人肉 CPU 跑一遍

下面的循环输出什么?点“下一步”,跟着变量表逐行执行 —— 这就是"模拟计算"。

int s = 0;
for (int i = 1; i <= 5; i++) {
    if (i % 2 == 1)
        s += i;       // 奇数才累加
}
cout << s;
i
i 是奇数?
s0
i奇?s

三、高频考点(认脸)

方向反复出现的考点
位运算2021.16 / 2022.16 / Base64 解码(2021.17)
动态规划LCS(2023.17)、丢鸡蛋(2022.17)
数学海伦公式(2023.16)、牛顿迭代(2022.18)、因数(2023.18)
筛法欧拉筛求质数(2021.18)

把位运算、筛法、DP、数学公式的"标准代码长相"记熟,读到就能秒认。