要实现:<1> 求解下面函数的值。
               ex+y    【e的(x+y)次方】                 x<0,y<0
         z=   ln(x+y)                 1≤x+y〈10
              log10|x+y|+1               其它情况

我的代码:
#include<iostream>
#include<math.h>
using namespace std;
int main() {
        double x, y, z;

        cout << "请分别输入x,y的值:" << endl;
        cin >> x >> y;
        if (x<0&&y<0)

                z = exp(x + y);

        if (x + y >= 1 && x + y < 10)
                z = log(x + y);
        else
                z = log10(fabs(x + y)+1);
        cout << "函数值为:" << z << endl;
        return 0;
}

问:代码哪里出错了?简单测试了一下,就是当x和y都小于0时算的有问题,但不知道错在哪,
求大佬指点,谢谢
湖北网友:你思维不行
第二个if前面请加个else谢谢
吉林网友:的确把,才刚刚学的C++,也没啥基础,大佬能说下问题出在哪吗

浙江网友:前边大佬说了,要加个else,按你现在的代码,x y 都小于0的时候,最后那个else也满足条件,被执行了。
四川网友:知道了多谢,其实在写的时候自己也在想    “不是说else与if一一对应嘛“  最后发现可以写出来就没管了
湖南网友:这些都是基本语法啊,我建议你还是学其他语言简单点
重庆网友:PHP是世界上最好的语言
上海网友:逻辑有点乱啊。。

01-08 01:39