c语言中的switch语句

当x<=850, y=0;
850<x<=1350, y=5;
1350<x<=2850, y=10;
2850<x<=5850, y=15;
5850<=x, y=20;
用c语言中switch语句表示。

第1个回答  2011-10-24
switch (((x-850)>0)?0:((x-851)/500+1))
{
case 0:
y = 0;
break;
case 1:
y = 5;
break;
case 2:
case 3:
case 4:
y = 10;
break;
case 5:
case 6:
case 7:
case 8:
case 9:
case 10:
y = 15;
break;

default:
y = 20;
break;
}

希望对你能有帮助
第2个回答  2011-10-24
用IF比较容易实现。
第3个回答  2011-10-24
int a;
if(x<=850) a=0;
else if(x<=1350) a=1;
else if(x<=2850) a=2;
else if(x<=5850) a=3;
else a=4;
switch(a)
{
case 0 : y=0;
case 1 : y=5;
case 2 : y=10;
case 3 : y=15;
case 4 :y=20;
}追问

不用if

第4个回答  2011-10-25
7楼正解 那些用if语句的忽悠LZ啊
第5个回答  2011-10-24
这个 用 if分支语句好写点····