| 编程中国 | 业界新闻 | 技术文章 | 视频教程 | 下载频道 | 程序源码 | 个人空间 | 编程论坛
全能ASP/PHP/ASP.NET主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付学习型 ASP/PHP/ASP.NET 主机 30元/年
高端软件开发 = 年薪十万不是梦赛孚耐:软件保护加密专家身份认证令牌USB KEY 
共有 257 人关注过本帖
标题:C的比较菜的问题。。
收藏  订阅  推荐  打印 
man420323
Rank: 1
等级:新手上路
帖子:23
积分:330
注册:2007-10-1
C的比较菜的问题。。

#include<stdio.h>
void main()
{
float a[3],min;
int i;
for(i=0;i<=2;i++)
scanf("%f",&a[i]);
min=a[0]<a[1]?a[0]:a[1];
min=min<a[2]?min:a[2];
printf("%f",min);
}
这段代码是输入三个数,输出最小的数,但是输入三个树分别是22.22,22.33,22.44的时候,输出却是22.219999,请问这个是为什么?
2007-10-1 01:11
缘吇弹
Rank: 12Rank: 12Rank: 12
来自:A与C之间
等级:版主
威望:43
帖子:3024
积分:33034
注册:2007-7-2

精度

Repeat  Life=Study;Until (death);        //<a href="http://hi.baidu.com/yzidan" target="_blank"><font color="green">***>[B]欢 迎 光 临 我 的 博 客[/B]
2007-10-1 01:24
feitianx1
Rank: 1
等级:新手上路
帖子:6
积分:162
注册:2006-12-21

浮点数小数点后的有效位数是6
2007-10-1 01:32
悠悠水儿
Rank: 1
等级:新手上路
帖子:13
积分:230
注册:2007-6-20

支持2楼的


卖菜的鸟. 新手学c
2007-10-1 08:19
oldtiebccn
Rank: 1
等级:新手上路
帖子:10
积分:200
注册:2007-9-29

...............
2007-10-1 09:21
justing912
Rank: 1
等级:新手上路
帖子:11
积分:210
注册:2007-10-1

因为你定义数组是用的float类型,所以输出的就浮点型的,小数精确到6位.
2007-10-1 11:05
he5220
Rank: 1
等级:新手上路
帖子:17
积分:276
注册:2007-9-28

浮点型精确到小数点后6位,可以换double  或者long试下~~~~~

2007-10-1 12:18
woshiming66
Rank: 1
等级:新手上路
帖子:15
积分:250
注册:2007-10-1

那为什么不是22.220000呢?
2007-10-1 13:01
chowchow616
Rank: 1
等级:新手上路
帖子:15
积分:250
注册:2006-7-16

这是个float类型的数据。精读导致的。

[此贴子已经被作者于2007-10-1 17:15:04编辑过]



2007-10-1 17:14
追寻完美
Rank: 12Rank: 12Rank: 12
等级:版主
威望:5
帖子:330
积分:3404
注册:2007-9-30

呵呵```````结果是不可预知的``````````
变量类型要正确运用

[glow=255,red,2] 无限制追求技术的完美[/glow]
2007-10-1 18:12
关于我们 | 广告合作 | 编程中国 | 清除Cookies | Archiver | WAP | TOP

编程中国 版权所有,并保留所有权利。鲁ICP备08000592号
Powered by Discuz, Processed in 0.095829 second(s), 9 queries.
Copyright©2004-2008, BCCN.NET, All Rights Reserved