您的当前位置:首页break c语言

break c语言

来源:小侦探旅游网
C语言入门重点-break的用法

break的特点:

1、break如果用于循环是用来终止循环的; 2、break如果用于switch,则是用于终止switch; 3、break不能直接用于if,除非if属于循环内部的一个子句; 下面进行举例:

解释不能用于if,除非if是for循环的内部的一个子句:

. . .

{

for (i=0; i<3; ++i)

if(3>2)

. . . .

break;

. . . .

printf(\"hehe\\n\");

. . . .

}

上面的程序输出为

Press any key to continue

.

也就是说这个语句中的break虽然是if内部的一个语句,但是用来终止外部的for循环的,因此判断if成立后,执行break,使得程序跳出for循环,所以一次也没有输出“hehe”,没有输出。 break用于多个for循环的举例:

.

for (i=0; i<3; ++i)

. .

{

. . . . . .

for (j=1; j<4; ++j)

break:

. . . .

printf(\"HAHA\\n\");

. . . .

}

. . . .

HAHA

上方程序的输出为:

HAHA

. . . .

HAHA

因为上方的程序中break是把第二个for循环终止了,但printf函数不属于第二个for循环,因此输出了三次HAHA,如果break终止最外面的for循环,那么一次HAHA都不会输出,所以结论为:在多层循环中,break只能终止其最近的循环。

同样在多层switch嵌套中,break只能够终止距离其最近的switch语句。

.

. . .

int x=1, y=0, a=0, b=0;

switch(x)//第一个switch

. . . .

{

case 1:

. . . . . .

{

switch(y)//第二个switch

case 0

. . . . . . . . . . . . . .

}

a++;

break;//终止第二个switch

case 1:

b++;

break;

b=100;

. .

. . . .

case 2:

break;//终止第一个switch

a++;

. . . . . . . .

}

b++;

break;

以上的程序结果为 a = 1; b = 100。

.

因篇幅问题不能全部显示,请点此查看更多更全内容