标题:[求助]奇怪问题
只看楼主
askproblem
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-29
 问题点数:0 回复次数:5 
[求助]奇怪问题
关于以下两个程序
#include <stdio.h>
main()
{
float a;
scanf("%f",&a);
printf("%f\n",a);
}


#include <stdio.h>
main()
{
double a;
scanf("%f",&a);
printf("%f\n",a);
}

输入12.35
为什么第一个输出12.350000
而第二个输出0.000000
搜索更多相关主题的帖子: include double 
2007-07-29 14:40
bysdy
Rank: 1
等 级:新手上路
帖 子:30
专家分:0
注 册:2007-7-29
得分:0 
double a;
第2句定义A是double啊而你用的是%f啊
2007-07-29 15:02
cihren
Rank: 1
等 级:新手上路
帖 子:76
专家分:0
注 册:2007-6-27
得分:0 
double型用scanf读入时应使用%lf
程序应改成:

#include <stdio.h>
main()
{
double a;
scanf("%lf",&a);
printf("%lf\n",a);
}

革命尚未成功,同志仍需努力!
2007-07-29 16:53
anlogo
Rank: 2
等 级:论坛游民
威 望:1
帖 子:293
专家分:20
注 册:2007-7-20
得分:0 
2007-07-29 17:31
wtyj112
Rank: 1
等 级:新手上路
帖 子:222
专家分:0
注 册:2007-5-9
得分:0 
注意一下f和d类型数据长度不同,你定义了是double它的字长比float大 ,你输入是按f格式化输入的话就会出问题
建议你自己用f输入 d显示 然后仔细想想在内存里f和b 各占多少字节!

计算机之路是痛苦并快乐着的!!
2007-07-29 19:15
askproblem
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2007-7-29
得分:0 
明白了,多谢大家!!!!
2007-07-29 22:45



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-158942-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.419955 second(s), 9 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved