C语言编程中,为什么运行结果总是为0.000000 10

如下图,C语言编程中,运行结果总是0.000000,0.000000?是代码哪里打错了吗?求高人指点,谢谢谢谢!... 如下图,C语言编程中,运行结果总是0.000000,0.000000?是代码哪里打错了吗?求高人指点,谢谢谢谢! 展开
 我来答
7878ydna
推荐于2018-02-27
知道答主
回答量:10
采纳率:100%
帮助的人:4万
展开全部

最后一句

printf("%lf,%lf\n",&x1,&x2);

改为:

printf("%lf,%lf\n", x1, x2);

&为取地址符,用在scanf的参数前,printf不用。

还要注意当方程无根或一个根时,虚根变量会出现浮点数异常,printf便不会将其打印出来

leesunshine007
2015-09-26 · TA获得超过1172个赞
知道小有建树答主
回答量:701
采纳率:0%
帮助的人:436万
展开全部
scanf("%lf,%lf,%lf", &a, &b, &c);

这一行, 把 %lf 之间的  逗号 去掉

scanf("%lf%lf%lf", &a, &b, &c);

 然后, 

最后一行, 把 &x1, &x2 前的  & 去掉

printf("%lf,%lf\n", x1, x2);
追问

怎么变成了这样噢我的天

追答
最后一行, 把 &x1, &x2 前的  & 去掉

printf("%lf,%lf\n", x1, x2);
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
淦扰龙荣0hXf2a
2015-09-26 · TA获得超过113个赞
知道小有建树答主
回答量:200
采纳率:100%
帮助的人:128万
展开全部
你最后一句输出写错了,x1,x2前面不要加取址符&
追问

追答
说一遍,你怎么定义的输入,你就怎么输入,比如你没改之前输入之间有逗号,那你就用逗号分隔,现在你修改了,没有逗号,就不要加逗号,直接121
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
等不来金色的雨
2015-09-26 · 超过26用户采纳过TA的回答
知道答主
回答量:53
采纳率:0%
帮助的人:30万
展开全部
printf("%1f ,1f \n",x1,x2);试试
追问

追答
#include 
#include

void main()
{
float a,b,c,delt,x1,x2;

printf("输入方程的三个系数:");
scanf("%f%f%f",&a,&b,&c);

delt = b*b-4*a*c;

x1 = (-b+sqrt(delt))/(2*a);
x2 = (-b-sqrt(delt))/(2*a);

printf("方程的解分别为:x1=%.2f x2=%.2f \n",x1,x2);

}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式