break与continue都是跳出循环的语句。从一个程序实例看他们的不同之处。
1 #include<stdio.h> 2 void main(void) 3 { 4 int i,j; 5 for(i=0; i<3; i++) 6 { 7 8 if(i==1) 9 { 10 printf("i=%d,continue ",i); //i等于1时跳出单次循环 11 continue; 12 } 13 printf("i=%d ",i); 14 15 for(j=0; j<3; j++) 16 { 17 18 if(j==1) 19 { 20 printf(" j=%d,break ",j); //j等于1时跳出本层for循环 21 break; 22 } 23 printf(" j=%d ",j); 24 } 25 26 printf("next i "); 27 } 28 }
运行结果
i=0 j=0 j=1,break next i i=1,continue i=2 j=0 j=1,break next i
总结:
1、break跳出最近的一层循环;如程序中j不会到2
2、continue跳出本次循环,如程序中i可以到2,但i=1时跳过了j的循环。
3、continue和break都只针对最近一层循环有效。