1. 主页
  2. 文档
  3. C语言教程
  4. C语言控制语句
  5. For与While

For与While

问题:有没有以下两个循环不能以相同方式工作的示例?

/*Program 1 --> For loop*/
for (<init-stmnt>; <boolean-expr>; <incr-stmnt>) 
{
<body-statements>
}

/*Program 2 --> While loop*/
<init-stmnt>;
while (<boolean-expr>) 
{
<body-statements>
<incr-stmnt>
}

解决方案:
如果 body-statements 包含 continue,那么这两个程序将以不同的方式工作

请参阅以下示例:程序 1 将打印“循环”3 次,但程序 2 将进入无限循环。

程序 1 的示例

int main()
{
int i = 0;
for(i = 0; i < 3; i++)
{
printf("loop ");
continue;
} 
getchar();
return 0;
}

程序 2 的示例

int main()
{
int i = 0;
while(i < 3)
{
printf("loop"); /* printed infinite times */
continue;
i++; /*This statement is never executed*/
} 
getchar();
return 0;
}

 

这篇文章对您有用吗?