鱼C论坛

 找回密码
 立即注册
查看: 2099|回复: 4

小菜鸟试了试C语言009的例题2,运行的结果有问题,求大神帮忙改改~~~

[复制链接]
发表于 2014-7-14 22:12:49 | 显示全部楼层 |阅读模式
1鱼币
本帖最后由 风之残月 于 2014-11-10 10:18 编辑

#include <math.h>
#include <stdio.h>
void main()
{
double a , b , c , x1 , x2 , p , q, disc;
printf("input three number\n");
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("x1=%\nx2=%f\n", x1 , x2);
}

为何输入1 2 1时出现
x1=-1 #IND00
x2=-1 #IND00
#IND00为何会出现??

最佳答案

查看完整内容

scanf输入格式有错,scanf("a=%lf b=%lf c=%lf", &a , &b , &c);输入的类型应该是double,还有你输入时需要以这样的格式输入:a=1 b=2 c=1。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-14 22:12:50 | 显示全部楼层
scanf输入格式有错,scanf("a=%lf b=%lf c=%lf", &a , &b , &c);输入的类型应该是double,还有你输入时需要以这样的格式输入:a=1 b=2 c=1。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-14 22:35:16 | 显示全部楼层
scanf()  有错
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-14 23:41:54 | 显示全部楼层
看来一眼 其他没看
至少 scanf写错了 abc是double不是float
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2014-7-18 16:43:58 | 显示全部楼层
scanf("a=%lf b=%lf c=%lf", &a , &b , &c);
输入时
a=1 b=2 c=1
格式要与scanf相同
所以最好把a=这些放在printf中输出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-29 00:25

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表