您的位置首页百科问答

switch语句中case能跟多个语句吗

switch语句中case能跟多个语句吗

的有关信息介绍如下:

switch语句中case能跟多个语句吗

可以

case A:语句;break;

分号后面 是要按照顺序结构执行的,break前的语句可以是函数,单个或多个语句 或者是空

可以自己写个小程序,验证,例如

#include

int main()

{

int a,b;

a=8;

switch(a)

{

case 8:a=a+2;b=a+3;break;

case 9:break;

}

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

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

}

将a分别赋值8 和9 ,执行俩遍试试

case只是个程序入口地址,写5个等同于有5个标号写到同一处,所以执行1次

参考下面程序对比:

switch ( n )

{ case 0: case 1: case 2: case 3: case 4: case 5: i=i+1;

case 6: break;

default: i=0; break;

} //当n=0~5时都会去执行i=i+1;一次,然后顺序执行下面紧跟着的break;语句跳出switch

以上程序功能等同于下面程序,但上面程序易读,case 0:相当于下面的标号BBB0:

if ( n==0 ) goto BBB0;

else ( n==1 ) goto BBB1;

else ( n==2 ) goto BBB2;

else ( n==3 ) goto BBB3;

else ( n==4 ) goto BBB4;