c语言switch case语句是什么?

如题所述

switch (表达式)

{

case 常量表达式1:语句1

case 常量表达式2:语句2

......

case 常量表达式n:语句n

default:语句n+1

}

执行过程:

1、首先计算“表达式”的值,假设为m。

2、从第一个case开始,比较“整型数值1”和m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的case是否匹配成功。

3、如果“整型数值1”和m不相等,就跳过冒号后面的“语句1”,继续比较第二个case、第三个case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设m和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。

4、如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行default后的“语句n+1”。

遵守switch语句规则

任何switch语句都必须遵循以下规则:

1、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。

2、switch()的参数类型不能为实型 。

3、case标签必须是常量表达式(constantExpression),如42或者'4'。

4、case标签必须是唯一性的表达式;也就是说不允许两个case具有相同的值。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-05-23

switch (表达式)

{

case 常量表达式1:语句1

case 常量表达式2:语句2

......

case 常量表达式n:语句n

default:语句n+1

}

执行过程:

1、首先计算“表达式”的值,假设为m。

2、从第一个case开始,比较“整型数值1”和m,如果它们相等,就执行冒号后面的所有语句,也就是从“语句1”一直执行到“语句n+1”,而不管后面的case是否匹配成功。

3、如果“整型数值1”和m不相等,就跳过冒号后面的“语句1”,继续比较第二个case、第三个case……一旦发现和某个整型数值相等了,就会执行后面所有的语句。假设m和“整型数值5”相等,那么就会从“语句5”一直执行到“语句n+1”。

4、如果直到最后一个“整型数值n”都没有找到相等的值,那么就执行default后的“语句n+1”。

遵守switch语句规则

任何switch语句都必须遵循以下规则:

1、只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。

2、switch()的参数类型不能为实型 。

3、case标签必须是常量表达式(constantExpression),如42或者'4'。

4、case标签必须是唯一性的表达式;也就是说不允许两个case具有相同的值。

本回答被网友采纳
相似回答