2 cherryljr cherryljr 于 2012.10.24 14:36 提问

关于C语言中输入浮点数

求大神讲解一下浮点数输入的方法和注意事项啊,我老是得不到想要的答案呢~~~~(>_<)~~~~
比如:

#include <stdio.h>
int main()
{
    double a;
    scanf("%f",&a);
    printf("a=%f",a);
    return 0;
}

我输进去12.1
出来的结果是
12.1
a=-92559604618046016000000000000000000000000000000000000000000000.000000请按任意
键继续. . .

9个回答

cherryljr
cherryljr   2012.12.23 17:04

我知道了诶……那时没学,现在懂了

suannai0314
suannai0314 恭喜自己找到答案,能将你的答案更新上么?以后再有碰到这个问题的人也能更快一些得到解答。谢谢。
大约 5 年之前 回复
tlxzsz
tlxzsz   2014.02.22 10:36

#include
int main()
{
double a;
scanf("%lf",&a);
printf("a=%lf",a);
return 0;
}
你懂什么了,说出来啊,这个样子才对的。

eagleyan
eagleyan   Rxr 2014.12.06 06:58

浮点数输出精度需要控制

u012421456
u012421456   Rxr 2015.01.02 09:13

double输入需要%lf

ulaula0126
ulaula0126   2015.02.02 19:30

对于scanf,读取double类型需要%lf,对于printf,只需要%f就可以了。

a1193561652
a1193561652   Rxr 2015.05.20 22:21

scanf()接收输入时格式化字符串要严格的匹配才行,double应该是%lf。

u012320411
u012320411   2015.05.27 11:54

scanf("%lf",&a);

u012320411
u012320411   2015.05.27 11:54

scanf("%lf",&a);

henuyx
henuyx   2015.06.01 13:05

除了scanf时用 %lf 输出的时候 %.6lf 来控制一下输出精度

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!