一道C语言题,看我这里怎么错了,告诉我正确过程,谢谢!

2024-12-01 04:40:27
推荐回答(5个)
回答1:

12行 有错。

else 之后不能带条件

..如果你一定要做判断

#include
#include
int main()
{
    float a,x,y;
    printf("请输入x和a的值 ");
    scanf("%f%f",&x,&a);
    if (-a        y=sqrt(a*a-x*x);
    }
    else if(x<-a|x>a){      //情况3
        y=x-1;
    }
//  else if(x=-a|x=a){                //情况2
//      y=0;
//  }
    else{                    //扣除情况1 和 情况3  ,,就是 情况2 了。
        y=0;
    }
    printf("a=%f,x=%f,y=%f\n",a,x,y);
    return 0;
}

有不理解可以@我

回答2:

第8行改写为:
if(-a第10行改写为:
else if(x<-a||x>a)

回答3:

这里没错,是上句少了一个分号。

回答4:

第八行不能这么表示

回答5:

第12行 只写else