问题 单项选择题

若有定义:float x=1.5;int a=1,b=3,c=2;则正确的switch语句是______。

A) switch(x)
B) switch((int)x);
case 1.0:printf("*\n");
case 1:printf("*\n");
case 2.0:printf("**\n");
case 2:printf("**\n");
C) switch(a+b)
D) switch(a+b)
case 1;printf("*\n");
case 1:printf("*\n");
case 2+1:printf("**\n");
case c:printf("**\n");)

答案

参考答案:C

解析: switch-case结构中,case后面必须是整数或者字符常量。因此选项A、D都错。而B中switch后面不能有分号。注意,(2+1)是一个常量。

单项选择题
多项选择题