c语言萌新求帮助 2022-04-29 12:08 采纳率: 100%
浏览 34
已结题

C语言函数问题,不懂结果为什么是0

一个分段函数的C语言问题,我想问一下为什么无论x我输入多少,得出来的结果都是0,希望有人解答一下我的疑惑,顺便帮我指正,谢谢了

img

  • 写回答

4条回答 默认 最新

  • qfl_sdu 2022-04-29 12:15
    关注

    (1)把x和y改成float类型, float x,y;
    (2)^符号在C语言中是亦或运算,不是求幂,需要用pow函数
    pow((x-3),2);
    (3)1/2改成 1.0/2
    完整代码:

    #include <stdio.h>
    #include <math.h>
    int main()
    {
        float x, y;
        printf("please input x:");
        scanf("%f", &x);
        if (x < 2)
            y = -x + 2.5;
        else if (x >= 4)
            y = (1.0 / 2) * x - 1.5;
        else
            y = pow((x - 3), 2) * (-1.5) + 2;
        printf("y=%f", y);
        return 0;
    }
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 5月7日
  • 已采纳回答 4月29日
  • 创建了问题 4月29日

悬赏问题

  • ¥15 stm32开发clion时遇到的编译问题
  • ¥15 lna设计 源简并电感型共源放大器
  • ¥15 如何用Labview在myRIO上做LCD显示?(语言-开发语言)
  • ¥15 Vue3地图和异步函数使用
  • ¥15 C++ yoloV5改写遇到的问题
  • ¥20 win11修改中文用户名路径
  • ¥15 win2012磁盘空间不足,c盘正常,d盘无法写入
  • ¥15 用土力学知识进行土坡稳定性分析与挡土墙设计
  • ¥70 PlayWright在Java上连接CDP关联本地Chrome启动失败,貌似是Windows端口转发问题
  • ¥15 帮我写一个c++工程