浙大版《C语言程序设计(第3版)》题目集
练习2-11 计算分段函数[2] (10 分)
本题目要求计算下列分段函数f(x)的值:
f
(
x
)
=
{
x
0.5
(x >= 0)
(
x
+
1
)
2
+
2
x
+
1
x
(x < 0)
f(x)= \begin{cases} x^{0.5}& \text{(x >= 0)}\\ (x+1)^{2}+2x+\frac{1}{x}& \text{(x < 0)} \end{cases}
f(x)={x0.5(x+1)2+2x+x1(x >= 0)(x < 0)
注:可在头文件中包含math.h
,并调用sqrt
函数求平方根,调用pow
函数求幂。
输入格式:
输入在一行中给出实数x。
输出格式:
在一行中按“f(x) = result”的格式输出,其中x与result都保留两位小数。
输入样例1:
10
输出样例1:
f(10.00) = 3.16
输入样例2:
-0.5
输出样例2:
f(-0.50) = -2.75
二、题解
c代码
#include <stdio.h>
#include <math.h>
int main() {
double x, y = 0;
scanf("%lf", &x);
if(x < 0) y = (x + 1) * (x + 1) + 2 * x + 1 / x;
else y = sqrt(x);
printf("f(%.2lf) = %.2lf", x, y);
return 0;
}