易截截图软件、单文件、免安装、纯绿色、仅160KB

c中float数值为什么输出和输入的不一样?

定义a为float类型,赋值为100.255,用printf输出为100.254997。为什么?请高手解答!
float精度不够,换成double就行了

计算机在存储浮点数的时候精度本来就有问题,看下浮点数如何转化为二进制就会明白了~~

百度一下“IEEE754标准”
100.255在存储的时候要转换成IEEE754标准的32位二进制串, 输出的时候再转成10进制浮点数。 
存储的时候有误差。



浮点数默认输出是6位,并且存在一定的精度误差。
printf("%.3f",a);
可以限定输出浮点数a的三位小数.

float类型在计算机中的存储结构是怎么样的,不知道楼主是不是关注过。如果认真看过这个知识点相信楼主肯定对自己到问题就知道为什么了。

请试试printf("%f\n",0.2+0.4);


引用
请试试printf("%f\n",0.2+0.4);


6楼想表达什么?


相关问答:

求教c/c++语言相关问题 - C/C++ / C语言

有一10*10矩阵,除去第一个点(0,0)和最后一点(9,9),还有八个点为1,其他都为0,要求用二维数组表示。八个点是随机生成的,编写相关程序表示矩阵所有可能情况。
真心求教各位高手,哎!本人太菜了!呵呵!
......

在windows7下的C/C++ - C/C++ / C语言

VC6.0不能用,VS系列太大,能不能推荐几款小巧的C/C++的IDE
没有。楼下的垃圾回答

http://topic.csdn.net/u/20100105/09/c854cc79-c8b0-4c1a-a8cf-9ab001ab13a5.html?76698

VC6.0我windows7能用
其他的
DEV ......

C进栈出栈时出问题了!!!! - C/C++ / C语言

C/C++ code:
#include<stdio.h>
#define MAXN 26
char stack[MAXN];
int top=0;
int push(x);
int pop(p_y);
void main()
{
char mpush=3;
char *mpop;
*mpop=0;
// printf("%d\n ......

C的四本经典之作要全买吗 - C/C++ / 新手乐园

RT!
C程序设计语言第二版
C和指针
C陷阱与缺陷
C专家编程
知道这四本都很有价值,但这四本哪两本最值得深读和研究的?我想买纸质的。还是这四本都要买?
一本书先研究通了足以,知识点都是差不多的,关键看自 ......

求助:C代码改写成VB代码 - VB / 基础类

谁能帮我把下面这些代码改成VB形式的,多谢了,急用~~
#include "stdlib.h"
#include "math.h"
#include "stdio.h"
float objfx(float x[]);
void constraint(float x[],float g ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号