新手按照小鱼的代码敲的,却不知道哪里错了
#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);
}
结果无论输入何值,结果都是这样,这是为嘛?? 有木有知道的啊 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 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
结果还是老样子 应该是只输入了一个数,应该这样输:7 8 9,即三个数之间要隔着空格或者回车或者tab键 ianv 发表于 2015-9-22 11:30
应该是只输入了一个数,应该这样输:7 8 9,即三个数之间要隔着空格或者回车或者tab键
都试了,还是不行 scanf("%lf,%lf,%lf",&a,&b,&c);
输入1,3,2
其他数,有的行, 有的不行..
至于为什么,我也不知道.. 还在学习中.. Dragon. 发表于 2015-9-22 19:21
scanf("%lf,%lf,%lf",&a,&b,&c);
输入1,3,2
其他数,有的行, 有的不行..
好纠结 现在好了,重新打了一遍,就没问题了 飞羽先生 发表于 2015-9-23 12:45
现在好了,重新打了一遍,就没问题了
怎么好的我怎么还是调不好 甲鱼牙1 发表于 2015-9-23 17:49
怎么好的我怎么还是调不好
不清楚,重新打了一遍就好了,你也出现这个问题??? 第一条:改为 scanf("a=%lf,b=%lf,c=%lf",&a,&b,&c); 第二条:输入 a=1,b=2,c=3
注意,不是输入1,2,3 或者是1 2 3
而是 a=1,b=2,c=3 把所有的字符都打上OK?
一字不差(字母,等号,数字,逗号) 好了给评价!!! b*b-4*a*c为负数时就是楼主的图上的问题了,看到楼主,我当时是少了‘*’比我当时强啊 桃花飞舞 发表于 2015-9-30 00:24
b*b-4*a*c为负数时就是楼主的图上的问题了,看到楼主,我当时是少了‘*’比我当时强啊
出现这个是乱码的意思??? 甲鱼牙1 发表于 2015-9-23 17:49
怎么好的我怎么还是调不好
啊,我就是学习学习你的代码了,也想看看到底是什么问题,纠结了好久也没调试好
页:
[1]