| 题号 | 题型 | 答案 | 考点 | 解题思路 |
|---|---|---|---|---|
| 第 1 题 | 选择题 | A | 输入输出 | 这题考的是计算机外设分类。拿到题先别想手写板是干嘛用的,去想信号流向:外部动作变成电信号进电脑,就是输入。 |
| 第 2 题 | 选择题 | D | 位运算 | 看到‘a是b的k倍’→直接构造等式a=k b,别用除法或取模。 |
| 第 3 题 | 选择题 | C | — | 看到逗号表达式别慌,先记住它本质是‘按顺序执行一串动作,最后只留下最后一个动作的结果’。这题就是让你一步步看变量怎么变,最后取b的值。 |
| 第 4 题 | 选择题 | C | 算法 | 这题表面考循环与递归的区别,实则挖的是递归栈溢出陷阱。拿到题先别急着算结果,要盯着 sumB 的递归层数:输入 n 时,sumB 会调用 n 次,每次压栈。选项 C 的 10000… |
| 第 5 题 | 选择题 | A | 函数与递归 | 这题考递归构造。拿到题先想:反序就是把最后一个字符提到最前面,剩下的继续递归。所以横线必须返回“末尾字符”拼上“去掉末尾后的递归结果”,顺序不能错。 |
| 第 6 题 | 选择题 | B | 递推 | 这道题考递归分治思想,拿到题先想汉诺塔三步走:移n 1个到辅助柱、最大盘到目标柱、再把n 1个从辅助柱移到目标柱,代码已写完前两步,横线处只需补第三步,看参数顺序就能锁定答案。 |
| 第 7 题 | 选择题 | A | 函数 | 这题核心就是考STL sort的传参规则和函数调用本质。sort那个空要填函数名(指针),if那个空要填函数调用(值)。拿到题先想:sort需要比较器,if需要布尔值,然后看com… |
| 第 8 题 | 选择题 | C | 函数 | 拿到题别慌,先盯着函数指针声明 bool( Fx)(int) 看,它要的是个'吃int吐bool'的函数。再看isEven,签名分毫不差,直接传进去就能跑。最后别忘了cout输出b… |
| 第 9 题 | 选择题 | C | 函数 | 这题考函数指针类型匹配。拿到题先别急着看选项,盯着checkNum的参数声明bool ( Fx)(int),脑子里过一遍isOdd和Square的返回类型,只要发现Square返回… |
| 第 10 题 | 选择题 | D | 函数与递归 | 这题表面是斐波那契递归,实则考递归执行顺序与输出时机。拿到题先看 cout 在函数开头还是结尾,再顺着调用栈一层层推,别被返回值数字带偏,记住每次函数进栈先输出一串,出栈才加总。 |
| 第 11 题 | 选择题 | B | 算法 | 这题就是考大O表示法怎么从代码里读出来的。拿到题先别急着看选项,直接盯住两个for循环的上限:一个是i<N,一个是i<=sqrt(N)。最坏情况就是N本身是素数,循环跑到底,次数分… |
| 第 12 题 | 选择题 | C | 归并排序 | 这题别急着数代码行数,先画个递归树。merge 函数只在非叶子节点被调用,每层把区间一分为二直到长度为1就停了。数清楚每一层有多少个区间在合并,加起来就是答案。 |
| 第 13 题 | 选择题 | B | 函数与递归、分治算法、归并排序 | 看到 mergeSort 里那一串 mergeSort 的调用,别慌,直接想:把大问题拆成两个小问题,分别搞定再合并,这就是分治的骨架,选 B 就对了。 |
| 第 14 题 | 选择题 | A | 函数与递归、算法 | 这题考归并排序的基本思想,拿到题先想‘分治法’的核心步骤:先把大问题拆成小问题,解决后再合并。选项A里的‘分成两个子数组、分别排序、再合并’完全对应这个逻辑,其他选项是快排、选择排… |
| 第 15 题 | 选择题 | C | 链表 | 拿到题先别急着看选项,把代码里的new和指针赋值像画图一样在脑子里连起来:第一个节点指向第二个,第二个指向第三个,而第三个的Next参数传回了第一个节点,这就形成了一个闭环,直接锁… |
| 第 16 题 | 判断题 | A | 传输层协议:TCP与UDP | 这题考的是计算机网络基础里传输层的协议。别想复杂,直接回忆 OSI 七层模型或 TCP/IP 四层模型,传输层负责端到端通信,核心就是 UDP 和 TCP 这两个,选 A 没错。 |
| 第 17 题 | 判断题 | B | — | 这道题考流程图符号规范。拿到题先想GESP五级大纲白纸黑字规定是啥,标准符号集里有没有三角框和圆形框,有就判对,没有就判错,别被'特殊情况'这种话绕进去。 |
| 第 18 题 | 判断题 | B | 算法、复杂度分析 | 别被‘常用’二字带偏了,直接上时间复杂度:埃氏筛O(n log log n),线性筛O(n),线性筛更快。 |
| 第 19 题 | 判断题 | B | 链表、二分查找 | 拿到题先想:二分查找的核心操作是什么?它依赖数据结构的什么特性?链表能支持这个特性吗? |
| 第 20 题 | 判断题 | A | 链表 | 这题考的是链表指针的本质:C++ 里指针只是存地址,只要内存没被释放,让尾节点的 next 指向头节点就完全合法。别被‘循环引用’吓到,它不等于悬空或泄漏,直接选A。 |
| 第 21 题 | 判断题 | A | — | 这题考贪心算法的本质——局部最优不等于全局最优。拿到题先别想具体题目,直接联想反例:找零问题面额{1,3,4}凑6,贪心选4+1+1得3枚,最优是3+3得2枚,这就证伪了‘贪心一定… |
| 第 22 题 | 判断题 | B | 算法 | 这题考排序算法优劣判断,核心是时间复杂度对比。拿到题先想:冒泡是O(n²),归并是O(nlogn),再看‘一般说来’这几个字是不是在偷换概念。 |
| 第 23 题 | 判断题 | A | 算法、函数 | 这题考的是对标准库函数背后算法特性的记忆,别被函数名带偏,直接联想qsort对应快速排序,快排最显著的标签就是不稳定,选A。 |
| 第 24 题 | 判断题 | A | 算法 | 这题考的是算法目的区分,拿到题先想:判定是单点决策,筛法是批量生成;命题人用'目的'一词卡住只背结论的考生,直接选A。 |
| 第 25 题 | 判断题 | A | 函数 | STL 容器:vector(动态数组)、set/map(红黑树,有序)、unordered_set/map(哈希表,无序)。注意迭代器失效问题。 |
建议按「限时做 → 对答案 → 读常见错误」三步走。先按考试的真实节奏做完,再回来看每一题的解析;尤其是"常见错误"那一段——它对应的是命题人反复设置的陷阱,读完能直接迁移到同类题上。
想做限时模考,可在 OI伴学 平台切换考试模式;错题会自动归集,并按考点推荐同类练习。