在下面的 C++ 代码 while(1) continue; 中,由于循环中的 continue 是无条件被执行,因此将导致死循环。
这题考的是while循环结合continue语句的语义,核心在于理解continue只是跳过本次循环体剩余部分并立即重新判断条件,而while(1)条件永远为真,因此会陷入死循环。
很多学生会误以为continue只是‘跳过这一行’,就认为循环还能继续执行后续代码,从而错误选项B。其实continue在语法上等同于‘跳过本次循环体剩余部分,然后回头检查条件’。当条件永远为真时,循环体里只有continue,相当于不断回头检查条件,永远出不来。命题人就是利用这种对continue语义的模糊认知挖坑。
【考点】C++基本语法|循环控制|continue语句语义
GESP一级‘程序基础’模块——循环结构的控制流理解。命题人卡住两类人:背语法的人以为continue只是‘跳过这行’,忽略了它本质是无条件跳回条件判断;而while(1)的恒真条件更是让粗心考生误以为‘有continue就不会死循环’。这道题就是专门用来筛掉对循环控制流理解不透彻的人。