用C语言switch表示分段函数要怎么表示?

2024年11月17日 09:33
有5个网友回答
网友(1):

switch(x>5)
{
case 1: y=3;break;
case 0: switch(x>=0)
{
case 1: y=1;break;
case 0: switch(x<-5)
{
case 1: y=-3;break;
case 0: y=-1;break;
}
}
}
嵌套使用

网友(2):

#include void main() { int x,y,flag; printf("请输入x:"); scanf("%d",&x); flag=x<0?-1:(x<10?1:2); switch(flag) { case -1:y=x;break; case 1:y=2*x-1;break; case 2:y=3*x-1; } printf("y=%d\n",y); }

网友(3):

switch语句中的case标签必须是整型常量或者整数常量表达式 不能是个范围~所以不能用SWITCH写
用if else if..else 吧~

网友(4):

y = x > 5? 3: (x>=0? 1 : (x>=-5? -1:-3));

网友(5):

if( x > 5)
y = 3;
else if(x >= 0)
y = 1;
else if( x <= -5)
y = -3;
else y = -1;