吾家有事情 发表于 2022-4-5 17:05:38

这个哪里有问题啊

题目y=x的4次+1 0<x<5
      y=0             x=0
      y=(绝对值x)+4



#include <stdio.h>
#include <math.h>
int main()
{
        int x;
        double y;
        scanf("%d",&x);
        if (x>0 && x<5)
        {
          y=x*x*x*x+1;
           printf("%f\n",y);
    }
    else if (x=0)
    {
            y=0;
            printf("%f\n",y);
        }
        else if (x<0 && x>=5)
        {
                y=3+abs(x);
                printf("%f\n",y);
       }
       return 0;
}

傻眼貓咪 发表于 2022-4-5 17:50:10

本帖最后由 傻眼貓咪 于 2022-4-5 17:54 编辑

y = x 的 4 次方 + 1(这里无论 x 是否是负数,4 次方后依然变成正数不是吗?为什么要用绝对值?)
#include <stdio.h>
#include <math.h>
int main()
{
    int x;
    double y;
    scanf("%d", &x);
    if (x > 0 && x < 5)
    {
      y = x * x * x * x + 1;
      printf("%f\n", y);
    }
    else if (x == 0) // <------------ 注意你的这里,比较符用双等于符 "=="
    {
      y = 0;
      printf("%f\n", y);
    }
    else if (x < 0 && x >= 5)
    {
      y = 3 + abs(x);
      printf("%f\n", y);
    }
    return 0;
}

yzzc 发表于 2022-4-8 16:01:37

#include <stdio.h>
#include <math.h>
int main()
{
      int x;
      double y;
      scanf("%d",&x);
      if (x>0 && x<5)
      {
            y=x*x*x*x+1;
             printf("%f\n",y);
    }
    else if (x=0)      //这里写成x==0,x=0的意思是把0赋值给x
    {
            y=0;
            printf("%f\n",y);
      }
      else if (x<0 && x>=5)   //这里直接写else就行,或者把&&改成||,这里写&&程序就错了
      {
                y=3+abs(x);
                printf("%f\n",y);
         }
         return 0;
}
页: [1]
查看完整版本: 这个哪里有问题啊