awygfuya 发表于 2015-10-2 22:16:32

请问我的程序有错吗,怎么结果老是=-1.#j

#include <stdio.h>
#include <math.h>

void main()
{
    double a, b, c, disc, x1, x2, p, q;
    scanf("a=%lf, b=%lf, c=%lf", &a, &b, &c);
    disc = b*b - 4*a*c;
    p = -b / (2*a);
    q = sqrt(disc) / (2*a);
    x1 = p + q;
    x2 = p - q;
    printf("\nx1=%5.2f\nx2=%5.2f\n", x1, x2);
}

飞羽先生 发表于 2015-10-2 23:26:38

我是重新打了一遍就好了,有大神说b*b-4ac是负值就会这样

awygfuya 发表于 2015-10-3 21:46:18

飞羽先生 发表于 2015-10-2 23:26
我是重新打了一遍就好了,有大神说b*b-4ac是负值就会这样

我发现只要把 scanf("a=%lf, b=%lf, c=%lf", &a, &b, &c);改为 scanf("%lf, %lf, %lf", &a, &b, &c);就可以了

飞羽先生 发表于 2015-10-5 12:06:58

awygfuya 发表于 2015-10-3 21:46
我发现只要把 scanf("a=%lf, b=%lf, c=%lf", &a, &b, &c);改为 scanf("%lf, %lf, %lf", &a, &b, &c);就可 ...

我没改。。。
页: [1]
查看完整版本: 请问我的程序有错吗,怎么结果老是=-1.#j