关于continue和break在switch中的用法

来源:百度知道 编辑:UC知道 时间:2024/09/21 22:59:20
continue在switch中是不是和break的用法一样啊

例i=1;n=6;
while(i<n)
{
switch(i){
case 1: printf("\n");break;
case 2: continue;
default : printf("error");
case 3: printf("\b");break;
}i++;
}

}

解释一下这里continue的用法
还有给解释一下 最后的default执行完后是不是直接结束而不执行case3啊;

switch()中用break来区分各分支的操作,continue一般不会用于switch()中,除非外面有循环。

将continue和break放在一起比较,一般是用于循环中。

break很简单,就是直接中断当前循环,并退出整个循环操作;
比如:
i = 10;
while(i > 0)

{
i --;
if(i == 7)
{
break;
}
// 其它操作
}
在i = 7时,整个循环就结束退出了,不会继续执行其它操作。

continue则是结束这一次循环,返回循环开始重新判断循环条件,并继续下一次的循环操作。
比如:
i = 10;
while(i > 0)

{
i --;
if(i == 7)
{
continue;
}
// 其它操作
}
在i = 7时,并不会继续执行其它操作,但是会返回循环开始条件判断的地方,
此时i > 0依然满足,则继续从i --;开始执行

switch里不能用continue的.
switch里的case不管顺序如何,i=1就匹配case 1:然后遇到break结束,如果i=3就匹配case 3:然后遇到break结束, 如果都没有匹配就到default:然后遇到break结束, 如上面的i=4就执行printf("error");printf("\b");

这个我刚刚用TC试了一下啊 在switch语句中不允许使用continue语句这可能也对吧 因为CONTINUE用在循环中我们都知道的 而如果你放在了SWITC