📜  门| GATE CS Mock 2018 |第 64 题

📅  最后修改于: 2021-09-26 04:26:38             🧑  作者: Mango

选择关于以下三个程序片段的最佳陈述。

/*Program Snippet 1 with for loop*/
for (i = 0; i < 10; i++)
{
   /*statement1*/
   continue;
   /*statement2*/
}
  
/*Program Snippet 2 with while loop*/
i = 0;
while (i < 10)
{
   /*statement1*/
   continue;
   /*statement2*/
   i++;
}
  
/*Program Snippet 3 with do-while loop*/
i = 0;
do
{
   /*statement1*/
   continue;
   /*statement2*/
   i++;
}while (i < 10);

(A)所有循环都是等价的,即可以选择三个循环中的任何一个,并且它们都将执行完全相同。
(B) continue 不能与 C 中的所有三个循环一起使用。
(C)击中继续后;所有循环中的语句,下一个要执行的表达式将是所有 3 个循环中的控制表达式(即 i < 10)。
(D)以上都不对。答案: (D)
解释:

首先,continue 可用于 C 中的 3 个循环中的任何一个。在“for”循环的情况下,当命中 continue 时,下一个要执行的表达式将是 i++ 后跟控制表达式(即 i < 10)。在“while”循环的情况下,当命中 continue 时,下一个要执行的表达式将是控制表达式(即 i < 10)。在“do-while”循环的情况下,当命中 continue 时,下一个要执行的表达式将是控制表达式(即 i < 10)。这就是为什么“while”和“do-while”循环的行为完全相同,但与“for”循环不同。只是为了重新迭代,当 continue 被点击时,i++ 将在“for”循环中执行。

选项(D)是正确的。
这个问题的测验