switch 不能用有范围的变量是吗?

来源:百度知道 编辑:UC知道 时间:2024/06/21 16:41:06
switch(x)
{
case x<20 : y=12*x; break;

case x>20 : y=19*x; break;

default : printf("no answer");
}

有范围不行吗??

要改的话怎样改...

不可以用有范围的变量,必须是整数或者结果为整数的表达式~

用 if 语句呗。。。
if(x<20)
y=12*x;
else
if(x>20)
y=19*x;
else
printf("no answer");

不可以。
switch 要具体的数值来匹配
可以用if...else...来实现
if(x<20)y=12*x;
else if(x>20)y=19*x;