可以看下面这个例子:
int main()
{
int i;
for (i=0;i<10;i++)
{
switch (i)
{
case 1: printf("%d\n", i); break;
case 2: printf("%d\n", i); continue;
default: printf("%d\n", i); continue;
}
putchar('*');
}
return(0);
}

可以看到,第一个输出结果经过了continue就直接跳过了putchar('*')这个式子,而且就跟平常for循环中的continue一样返回到头部i+1再出来;而当i=1时经过了break后,程序就可以走到后面的putchar('*'),并且继续循环。
因此,总结出来就是,再for循环中的switch语句,break只是打断了switch语句,并没有打断for循环,而且往下继续运行了;而continue就会返回到for的头部,与平常的for循环中的continue无异。
本文通过一个C语言示例详细解释了在for循环内部使用switch语句时,break和continue关键字的不同效果。当遇到break时,程序会跳出switch结构但继续执行for循环的后续部分;而遇到continue时,则会跳过当前循环内的剩余代码,直接回到for循环的开始,进行下一次迭代。这对于理解和优化C语言循环控制逻辑至关重要。
4493





