飞羽先生 发表于 2015-9-21 19:42:01

新手按照小鱼的代码敲的,却不知道哪里错了

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

void main()
{
        double a,b,c,disc,x1,x2,q,p;
        scanf("a=%f,b=%f,c=%f",&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-9-22 08:57:19

有木有知道的啊

仰望天上的光 发表于 2015-9-22 09:41:24

scanf("a=%f,b=%f,c=%f",&a,&b,&c);
改为 scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c);
然后输入a=1,b=2,c=3

飞羽先生 发表于 2015-9-22 10:59:48

仰望天上的光 发表于 2015-9-22 09:41
scanf("a=%f,b=%f,c=%f",&a,&b,&c);
改为 scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c);
然后输入a=1,b=2,c=3

结果还是老样子

ianv 发表于 2015-9-22 11:30:07

应该是只输入了一个数,应该这样输:7 8 9,即三个数之间要隔着空格或者回车或者tab键

飞羽先生 发表于 2015-9-22 14:45:35

ianv 发表于 2015-9-22 11:30
应该是只输入了一个数,应该这样输:7 8 9,即三个数之间要隔着空格或者回车或者tab键

都试了,还是不行

Dragon. 发表于 2015-9-22 19:21:15

      scanf("%lf,%lf,%lf",&a,&b,&c);
      输入1,3,2
      其他数,有的行, 有的不行..
      至于为什么,我也不知道.. 还在学习中..

飞羽先生 发表于 2015-9-23 12:41:14

Dragon. 发表于 2015-9-22 19:21
scanf("%lf,%lf,%lf",&a,&b,&c);
      输入1,3,2
      其他数,有的行, 有的不行..


好纠结

飞羽先生 发表于 2015-9-23 12:45:57

现在好了,重新打了一遍,就没问题了

甲鱼牙1 发表于 2015-9-23 17:49:49

飞羽先生 发表于 2015-9-23 12:45
现在好了,重新打了一遍,就没问题了

怎么好的我怎么还是调不好

飞羽先生 发表于 2015-9-23 17:54:45

甲鱼牙1 发表于 2015-9-23 17:49
怎么好的我怎么还是调不好

不清楚,重新打了一遍就好了,你也出现这个问题???

战w9diwdo 发表于 2015-9-29 15:07:51

第一条:改为 scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c);

战w9diwdo 发表于 2015-9-29 15:10:21

第二条:输入               a=1,b=2,c=3
注意,不是输入1,2,3 或者是1 2 3
而是         a=1,b=2,c=3                把所有的字符都打上OK?
一字不差(字母,等号,数字,逗号)

战w9diwdo 发表于 2015-9-29 15:11:10

好了给评价!!!

桃花飞舞 发表于 2015-9-30 00:24:39

b*b-4*a*c为负数时就是楼主的图上的问题了,看到楼主,我当时是少了‘*’比我当时强啊

飞羽先生 发表于 2015-10-2 23:24:51

桃花飞舞 发表于 2015-9-30 00:24
b*b-4*a*c为负数时就是楼主的图上的问题了,看到楼主,我当时是少了‘*’比我当时强啊

出现这个是乱码的意思???

甲鱼牙1 发表于 2015-10-7 17:17:07

甲鱼牙1 发表于 2015-9-23 17:49
怎么好的我怎么还是调不好

啊,我就是学习学习你的代码了,也想看看到底是什么问题,纠结了好久也没调试好
页: [1]
查看完整版本: 新手按照小鱼的代码敲的,却不知道哪里错了