switch语句case后面加什么(在与switch语句配套的case语句中)

http://www.itjxue.com  2023-01-27 12:09  来源:未知  点击次数: 

switch语句中case后面可不可以加字符串?

c/c++ 语言 不允许。

c/c++ 语言 case后面 只允许是 整型 常量 表达式,例如:

int k=3;

switch(k){

case 'd'-'a': printf("d-a\n");break;

case 4 : printf("4\n"); break;

case 'Z' : printf("Z\n"); break; //单引号括起的是字符常量,是整型。

}

上面 用的 都是 整型 常量 表达式, 所以正确。

字符串常量,例如:双引号括起的 "Z", 虽然是常量, 但它们不是 整型,所以不允许。

其它语言,要看它们自己的规定。

switch语句中case后只能加什么?

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

case标签(case后)必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。

其他规则:

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

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

扩展资料:

相关延伸:switch语句的语法如下(switch,case,break和default是关键字):

switch ( 变量表达式 )

{

case 常量1 :语句;break;

case 常量2 :语句;break;

case 常量3 :语句;break;

...

case 常量n:语句;break;

default :语句;break;

}

C语言的switch语句中case后()

选B,case后面只能是整型或字符型的常量或常量表达式。

一、switch是另外一种选择结构的语句,用来代替简单的、拥有多个分支的if else 语句,基本格式如下:

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”。

扩展资料:

1、switch后面括弧内的【表达式】,ANSI标准允许它为任何类型;

2、当表达式的值与某一个case后面的常量表达式的值相等时,就执行此case后面的语句,否则,就执行default后面的语句。

3、每一个case的常量表达式的值必须互不相同,否则就会出现互相矛盾的现象(对表达式的同一个值,有两种或多种执行方案)。

4、各个case各default的出现次序不影响执行结果。例如,可以先出现"default: ...",再出现"case 'D': ...",然后是"case 'A': ...".

5、执行完一个case后面的语句后,流程控制转移到下一个case继续执行。"case常量表达式"只是起语句标号作用,并不是在该处进行条件判断。在执行swith语句时,根据switch后面表达式的值找到匹配的入口标号,就从此标号开始执行下去,不再进行判断。

参考资料来源:百度百科-switch

(责任编辑:IT教学网)

更多

推荐新手入门文章