2013-06-22 192 views
-5

如果我在for循环中写入break语句,那么会更新变量,然后是循环退出,还是在循环出口的break语句执行完后? 例如break语句如何工作?

for(i=0;i<100;i++){ 
//do something something 
if(i==50){ 
break; 
} 

什么是我的循环退出后的价值?

+1

注:有一个'}'失踪。 – wildplasser

+5

其实,任何努力都缺失......或者我太高级=) –

+0

为什么不在循环后添加一个printf? – anishsane

回答

4

的值将是50。

for回路可以笼统这样来描述:

for(INIT; CONDITION; UPDATE) 
    BODY 

,它可以与等效while环被取代,这样的:

INIT 
while(CONDITION) 
{ 
    BODY 
    UPDATE 
} 

因此,由于您的breakBODY中,因此UPDATE未运行,并且VA仍然存在50

5

当一个循环中遇到break语句,循环立即终止,并在以下loop.It的下一个语句程序控制简历可用于在switch语句

enter image description here

终止的情况下
1

如果循环准备好通过break语句退出,那意味着i值应该等于条件。

if(i==50); 

我将50

...