C语言不知道为什么老是不能成功

输入一个实数x,分段函数求解y值,结果保留两位小数。
y=x平方/2(x小于2)
2x-2(2小于等于x小于9)
3根号下x+7(x大于等于9)

你的代码是什么

参考我的代码

#include <stdio.h>
#include <math.h>

int main() {
    double x, y;

    printf("请输入实数x: ");
    scanf("%lf", &x);

    if (x < 2) {
        y = pow(x, 2) / 2;
    } else if (x < 9) {
        y = 2 * x - 2;
    } else {
        y = 3 * sqrt(x) + 7;
    }

    printf("y = %.2lf\n", y);
    return 0;
}


#include <stdio.h>
#include <math.h>

int main() {
    float x, y;
    printf("请输入实数x:");
    scanf("%f", &x);
    if (x < 2) {
        y = pow(x, 2) / 2;
    } else if (x < 9) {
        y = 2 * x - 2;
    } else {
        y = 3 * sqrt(x) + 7;
    }
    printf("y的值为:%.2f\n", y);
    return 0;
}

分段函数就是一个if条件判断即可,如果你要是保留2位,%.2f可以满足,保留几位你可以去学习一下格式化输出。

不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^