求c语言大神帮忙看看这个简单的程序哪里错了!!!

2025-03-04 02:30:27
推荐回答(2个)
回答1:

        你的大括号用的不对……还有你的if……else……嵌套太多了,你可以尝试着用switch(x/10)来解决有关多个范围的问题。

        你这么虐心的程序也难怪错……我适当的改了一下,也不知道你的本来目的到底是什么……

#include 
#include "math.h"
int main()
{
int x,y;
   scanf("%d",&x);
   if(x<0)
   y=0;
  else
       if(x<=10)
   y=x;
         else
   if(x<=20)
       y=10;
  else
       if(x<40)
         y=-0.5*x+20;
      else
               if(x>=40)
    printf("error");
   printf("y=%d\n",y);
   return 0;
}

 话说这百度搞得这个代码空间也好烂,粘贴过来的好格式全又弄乱了,你凑合着看吧……

回答2:

#include
#include "math.h"
int main()
{
int x,y;
scanf("%d",&x);
if(x<0) y=0;
else if(x<=10) y=x;
else if(x<=20) y=10;
else if(x<40) y=-0.5*x+20;
else if(x>=40) printf("error");
printf("y=%d\n",y);
return 0;
}