C语言中while 和do-while 循环的主要区别是
A) do-while的循环体至少无条件执行一次
B) while 的循环控制条件比do-while 的循环控制条件严格
C) do-while 允许从外部转到循环体内
D) do-while 的循环体不能是复合语句
C语言中`while`和`do-while`循环的主要区别是:
A) **do-while的循环体至少无条件执行一次**
这是正确的。`do-while`循环首先无条件地执行一次循环体,然后检查循环条件。如果条件为真(非零),则循环继续;如果条件为假(零),则循环终止。而`while`循环在开始时就检查条件,如果条件为真则执行循环体,否则不执行循环体直接跳过循环。
B) **while 的循环控制条件比do-while 的循环控制条件严格**
这是不正确的。`while`和`do-while`的循环控制条件在严格性上没有区别。两者都是基于布尔表达式的结果来控制循环的执行。主要区别在于何时检查这个条件。
C) **do-while 允许从外部转到循环体内**
这是不准确的。在C语言中,没有直接的语法或机制允许从循环外部无条件地“跳转”到循环体内,无论是`while`循环还是`do-while`循环。可以通过`goto`语句实现类似的功能,但这通常不是推荐的做法,因为它会降低代码的可读性和可维护性。
D) **do-while 的循环体不能是复合语句**
这也是不正确的。`do-while`循环的循环体完全可以是复合语句(即,由花括号`{}`包围的语句块)。事实上,无论是`while`还是`do-while`循环,其循环体都可以是单条语句或复合语句。
A
用户登录可进行刷题及查看答案
登录后提交答案