C语言中switch语句_switch在c语言中

2022-09-27 11:39:42 浏览数 (1)

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

本篇文章帮大家学习c语言switch语句,包含了C语言switch语句使用方法、操作技巧、实例演示和注意事项,有一定的学习价值,大家可以用来参考。

C语言中的switch语句用于从多个条件执行代码。 就像if else-if语句一样。

C语言中switch语句的语法如下:

switch(expression){

case value1:

//code to be executed;

break; //optional

case value2:

//code to be executed;

break; //optional

……

default:

code to be executed if all cases are not matched;

}

C语言中switch语句的规则如下 –

switch表达式必须是整数或字符类型。

case值必须是整数或字符常量。

case值只能在switch语句中使用。

switch case中的break语句不是必须的。这是一个可选项。 如果在switch case中没有使用break语句,则匹配case值后将执行所有后的语句。它被称为通过C语言switch语句的状态。

我们试着通过例子来理解它。假设有以下变量及赋值。

int x,y,z;

char a,b;

float f;

有效的Switch

无效的Switch

有效的Case

无效的Case

switch(x)

switch(f)

case 3;

case 2.5;

switch(x>y)

switch(x 2.5)

case ‘a’;

case x;

switch(a b-2)

case 1 2;

case x 2;

switch(func(x,y))

case ‘x’>’y’;

case 1,2,3;

C语言中的switch语句的流程图 –

我们来看一个简单的C语言switch语句示例。创建一个源文件:switch-statment.c,其代码如下 –

#include

#include

void main() {

int number = 0;

printf(“Enter a number:”);

scanf(“%d”, &number);

switch (number) {

case 10:

printf(“number is equals to 10n”);

break;

case 50:

printf(“number is equal to 50n”);

break;

case 100:

printf(“number is equal to 100n”);

break;

default:

printf(“number is not equal to 10, 50 or 100n”);

}

}

执行上面示例代码,得到以下结果 –

Enter a number:88

number is not equal to 10, 50 or 100

执行第二次,结果如下 –

Enter a number:50

number is equal to 50

请按任意键继续. . .

switch语句直通到尾

在C语言中,switch语句是通过的,这意味着如果在switch case中不使用break语句,则匹配某个case之后的所有的case都将被执行。

我们来试试通过下面的例子来了解switch语句的状态。创建一个源文件:switch-fall-through.c,其代码如下所示 –

#include

#include

void main() {

int number = 0;

printf(“enter a number:”);

scanf(“%d”, &number);

switch (number) {

case 10:

printf(“number is equals to 10n”);

case 50:

printf(“number is equal to 50n”);

case 100:

printf(“number is equal to 100n”);

default:

printf(“number is not equal to 10, 50 or 100n”);

}

}

执行上面示例代码,得到以下结果 –

enter a number:10

number is equals to 10

number is equal to 50

number is equal to 100

number is not equal to 10, 50 or 100

请按任意键继续. . .

从上面的输出结果中,可以清楚地看到,当匹配 number = 10 之后,由于没有break语句,其它后面的语句也打印执行了。

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

0 人点赞