C语言:break和continue
break:
break用于循环则是终止循环,break如果用于switch,则是用于终止switch。break不能直接用于if,除非if是属于循环内部的一个子句
1 for (i=0;i<3;i++) 2 { 3 if (3>2) 4 break;//break虽然是if内部的语句,但break终止的却是外部的for循环 5 printf("hellllll\n");//不会输出 6 7 }
在多层循环中,break只能终止最里面包裹它的那个循环
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 for (i=0;i<3;i++) 2 { 3 for (j=1;j<4;j++) 4 break;//break只能终止距离它最近的循环 5 printf("ksdjfksjdk\n");//输出三遍 6 }
例子:
1 int x=1,y=0,a=0,b=0; 2 switch(x) 3 { 4 case 1: 5 switch(y) 6 { 7 case 0: a++;break; 8 case 1: b++;break; 9 } 10 case 2: a++;b++;break; 11 } 12 printf("%d %d\n",a,b); 13 //output 1 100
2016-05-22
continue:
用于跳过本次循环余下的语句,转去判断是否需要执行下次循环
for(1,2,3) { A; B; continue;//如果执行此语句,则执行完此语句后,会执行语句3,C和D都会被跳过去,C和 D不会执行 C; D; }
while(表达式) { A; B; continue;//执行此语句后,会执行表达式,C 和D都会被跳过去,c和d不会被执行 C; D; }