switch 中 break 和 continue 的区别[通俗易懂]

2025-09-27 00:39:29 3d世界杯

大家好,又见面了,我是你们的朋友全栈君。

1、break 用来退出 switch,continue 本身是不能用在 switch 里的,他必须结合循环来用,表示跳过本次循环

2、switch 的 case 语句最后如果没有加 break / continue,则程序会一直往后执行,可以借鉴 goto 跳转到位置,其实 switch 本身可以看作某种形式的跳转,而 C 语言中本身是不执行:的那条语句的,例如,如果程序中出现一条语句 wtch : ,C 语言是默认跳过的,这就很好理解为什么 swtich 中为什么需要在 case 语句最后加 break / continue 了,同样 : 前面不管是什么都不要事先去定义的

3、下面的程序就很好的能反应出switch 中的 break / continue 用法,同时 pro 没定义也不会出错:

代码语言:javascript代码运行次数:0运行复制/*************************************************************************

> File Name: t.c

> Author: Wenfei6316

> Mail: 2500873570@qq.com

> Created Time: 2018年03月12日 星期一 20时37分51秒

************************************************************************/

#include

#include

#include

int main(int argc, const char *argv[])

{

int i = 0;

int num = 3;

while (num)

{

printf("++++++++++++++++++++++++++++++++++\n");

switch (i)

{

case 0:

printf("i = %d\n", i++);

i++;

case 1:

printf("i = %d\n", i);

i = i + 2;

continue;

case 2:

printf("i = %d\n", i--);

i--;

break;

case 3:

printf("i = %d\n", i);

continue;

case 4:

printf("i = %d\n", i);

i++;

break;

default:

printf("i = %d\n", i);

i = 2;

break;

}

printf("----------------------------------\n");

num--;

printf("num = %d\n", num);

}

pro:

printf("hello world!\n");

return 0;

}

运行结果如下:

++++++++++++++++++++++++++++++++++

i = 0

i = 2

++++++++++++++++++++++++++++++++++

i = 4

----------------------------------

num = 2

++++++++++++++++++++++++++++++++++

i = 5

----------------------------------

num = 1

++++++++++++++++++++++++++++++++++

i = 2

----------------------------------

num = 0

hello world!发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/137431.html原文链接:https://javaforall.cn

后羿射日是什么生肖
石达开为什么过不了大渡河?