continue只能用在循环中,就是终止这次循环,立即执行下一条循环判定
break 可以用在switch case 和循环中
在switch case中用于结束
在循环中表示结束循环
break只能用于循环语句或者开关语句
会使最近包含break语句跳出
在while for、循环中 跳出本层循环
在swich-case中跳出对应的case
如果for(){switch case: break},for循环不受影响
while(1)
{
switch(1)
{
case 1:printf("1\n");
break;
}
}
//这种是break在switch中
如果是下面这样的话:那就直接退出循环
while(1)
{
switch(1)
case 1:printf("1\n");
break;
}
相当于
while(1)
{
switch(1)
{case 1:printf("1\n");}
break;
}
特殊情况
//首先去找有没有对应的num,如果没有就执行default语句,
//有就去执行对应的case语句,不论是case还是default,如果后面没有break,那么是不会跳出swicth,会继续执行完下面的所有语句直到break;
int num = 250;
switch(num)
{
case 50: num = 50;
case 100 :num = 200;
default :{num = 250;printf("num %d\n",num);}//先找到default,发现没有break就继续执行
case 200: num = 50;
}
printf("%d\n",num);
笔试题
分析:
由于continue只能用在循环语句中,所以continu是for的,而break用在循环和开关语句,所以break用在switch
所以程序第一次
j=1,continue,就不执行sum+=j
j=2,sum=0+2,break跳出 switch,但是执行sum+=j,sum=4
j=3,switch不满足,所以执行,sum=sum+j sum=7