GESP 三级 · GESP 202403 C++ 三级 第 25 题

判断题 · 答案 A · 考点:循环结构

← 整套速查表 GESP 三级 全部真题

题目

任何一个 for 循环都可以转化为等价的 while 循环( )。

答案:A

考点

循环结构

解题思维

答案A。追踪for循环:记录每次循环变量的值和累积结果的变化。注意循环终止条件。

常见错误

for循环体可能一次都不执行!这是和while循环一样的"先判断后执行"机制。

详细解析(节选)

【考点】循环结构|条件表达式|语句块

🎯 考纲定位 GESP C++ 三级《循环结构》模块,题型为判断题。命题人卡住的是 80% 考生对"语法形式"和"执行逻辑"的混淆——看到 for 循环自带初始化/步长就下意识认为"不一样"。

🧠 解题思维 for 循环的三要素(初始化、条件、步进)在 while 循环中完全可拆分:把初始化移到循环外,条件写在 while 括号内,步进放在循环体最后。执行顺序(初始化→条件判断→执行→步进→条件判断…)与 for 循环逐字对照,完全一致。因此任何 for 循环都能等价改写为 while 循环。

🪤 陷阱拆解 B 选项"错误"是典型语法陷阱:利用考生对语法的表面记忆,把"不同写法"偷换为"不同行为"。for 循环的语法糖(内置初始化和步进)被命题人故意隐去,考察的是语义理解而非背诵。如果你只背过 for 循环模板、没理解其内部执行顺序,就会误选 B。

🔄 反命题思维 命题人若把"for 循环都能转 while"改成"while 循环都能转 for",答案不变——反过来也成立。若改成"带多个语句的 for 循环能转 while",仍为真,因为 while 循环体可容纳任意多语句;改成"步进表达式含函数调用也能转",依然真。总之,循环结构的语义不依赖语法形式。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断