| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 592 人关注过本帖
标题:浮点数问题
只看楼主 加入收藏
weiwei555
Rank: 5Rank: 5
来 自:中国
等 级:职业侠客
帖 子:179
专家分:323
注 册:2011-3-4
结帖率:100%
收藏
已结贴  问题点数:10 回复次数:5 
浮点数问题
这个程序 有问题啊?

#include <stdio.h>
void main()
{
double a,b,c,d,e,q,g,h;
scanf("%lf%lf%lf",&a,&b,&c);
d=(a+b+c)/3;
e=10*d,q=e+0.5;
g=(int)(q),h=g/10;
printf("%f,%f,%f\n",q,g,h);
}
q值变化异常,
进行强制类型转换后出现问题
搜索更多相关主题的帖子: include double 
2011-10-23 19:14
wuyijiang07
Rank: 3Rank: 3
等 级:论坛游侠
帖 子:74
专家分:177
注 册:2011-10-21
收藏
得分:2 
试运行了一下,没看出什么问题,具体什么问题啊?
2011-10-23 19:31
embed_xuel
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:58
帖 子:3845
专家分:11385
注 册:2011-9-13
收藏
得分:3 
回复 楼主 weiwei555
多半是输入格式的问题,你把a,b,c打印出来自己调试

总有那身价贱的人给作业贴回复完整的代码
2011-10-23 19:47
weiwei555
Rank: 5Rank: 5
来 自:中国
等 级:职业侠客
帖 子:179
专家分:323
注 册:2011-3-4
收藏
得分:0 
这个是我从别的地方看到的 我见还没有解决,所以在这论坛发问了, 问题如下
的确是有问题呀,如果你输入 6  1 0.35
输出的是:25.000000,24.000000,2.400000
这时会发现, q值是25,对进行强制类型转换后得到的g却成了24,不是很奇怪吗?
2011-10-23 19:48
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
回复 楼主 weiwei555
这样写是什么用意?q、g都是double,你强制double q为int再赋值给double g,考验编译器来着?

授人以渔,不授人以鱼。
2011-10-23 22:07
weiwei555
Rank: 5Rank: 5
来 自:中国
等 级:职业侠客
帖 子:179
专家分:323
注 册:2011-3-4
收藏
得分:0 
回复 5楼 TonyDeng
呵呵,这个也不知是谁写的,不管了,忙其他的去……
2011-10-24 13:11
快速回复:浮点数问题
数据加载中...
 
   



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

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