问题 单项选择题

若有定义语句int a,b;double x;则下列选项中没有错误的是( )。

A) switch(x%2)
cage 0:a++;break;
case 1:b++;break;
default:a++;b++;

B) switch((int)x/2.0)
ease 0:a++;break;
case 1:b++;break;
default:a++;b++;

C) switeb((int)x%2)
case 0:a++;break;
case 1:b++;break;
default:a++;b++;

D) switch((int)(x)%2)
case 0.0:a++;break;
case 1.0:b++;break;
default:a++;b++;

答案

参考答案:C

解析: %运算符两边的表达式必须是整型,所以选项A)、B)错误。选项D中switch后的表达式类型和case后的表达式类型不一致。

单项选择题
填空题