一,简单分段函数
f(x)= -1 ( X<0 )
0 (X=0)
2x (X>0)
二、代码
1、多路分支代码
int main()
{
int i;
double x,y;
scanf("%lf",&x);
i=1*(x<0)+2*(x==0)+3*(x>0);
switch(i)
{
case 1:y=-1;printf("%0.2f\n",y);break;
case 2:y=0;printf("%0.2f\n",y);break;
case 3:y=2*x;printf("%0.2f\n",y);break;
}
return 0;
}
2、级联if else 代码
#include <stdio.h>
#include <stdlib.h>
int main()
{
double x,f;
scanf("%lf",&x);
if (x<0){
f=-1;
}
else if(x==0){
f=0;
}
else if(x>0){
f=2*x;
}
printf("%0.2f",f);
}
代码思路及注意事项
1、switch()里是可以运行整数型,在分段函数f(x)中无法保证x,y为整数型,则需要引入中间变量,将分段函数的条件转换为整数型
2、当x小于0时,i的值为1,则case 1里内容对应分段函数第一段;以此类推,最后一个条件可用case3,也可用dafault代替。
三、代码及运行结果
1、多路分支
2、if else 级联
更多推荐
c语言简单分段函数用多路分支与if else 级联的写法
发布评论