题解 | #分段函数#
分段函数
http://www.nowcoder.com/practice/af1d874fb54d4989ae868959bdda9894
关键点
- 浮点数相等的比较要转换为大小的比较
- 浮点数的输入输出
//输入
scanf("%f",&x);
//输出(%和f之间的数字代表宽度,x.y表示整数部分x位,小数部分y位)
printf("%.1f",y);
完整代码
#include<stdio.h>
int main(){
int loop = 0;
scanf("%d",&loop);
for(int i = 0;i<loop;i++){
float x = 0.0;
float y = 0.0;
scanf("%f",&x);
if(x > -1e-9 && x < 2.0)y = 2.5 - x;
else if(x < 4.00001)y = 2.0 - 1.5 * (x - 3) * (x - 3);
else y = x/2 - 1.5;
printf("y=%.1f\n",y);
}
}