注册 登录
编程论坛 C语言论坛

程序可以运行,但输出结果都是4,怎么回事?

郭阳yang 发布于 2020-11-03 19:54, 1396 次点击
#include <stdio.h>
int main()
{
 double a;
 scanf("%lf", &a);
 if (a < 0)
 
 {
   printf("-1");
}
  if (a = 0)
 
 {
   printf("0");
}
  if (a>0 &&a<= 8)
 
 {
   printf("%lf", a);
}
 if (a > 8 && a <= 20)
 
 {
   printf("%lf", a * (a + 1));
}
 else
 
  printf("%lf", (a - 2)*(a - 2));
 
}
2 回复
#2
风过无痕19892020-11-03 20:35
回复 楼主 郭阳yang
程序代码:

#include <stdio.h>
int main()
{
    double a;
    scanf("%lf", &a);
    if (a < 0)
    {
        printf("-1");
    }
    else if (a = 0)
    {
        printf("0");
    }
    else if (a>0 &&a<= 8)
    {
        printf("%lf", a);
    }
    else if (a > 8 && a <= 20)
    {
        printf("%lf", a * (a + 1));
    }
    else
        printf("%lf", (a - 2)*(a - 2));
}
#3
自学的数学2020-11-03 22:21
程序代码:
#include <stdio.h>
int main()
{
    double a;
    scanf("%lf", &a);
    if (a < 0)
           printf("-1");
     else
       {
        if (a == 0)
            printf("0");
        else {
             if (a>0 &&a<= 8)
              printf("%lf", a);
           else{
                 if (a > 8 && a <= 20)
                    printf("%lf", a * (a + 1));
                 else
                    printf("%lf", (a - 2)*(a - 2));
                 }
             }
      }
}
1