C语言float类型
浮点型变量是由有限的存储单元组成
因此,只能提供有限的有效数字,在有效位以外的数字将不精确,这样,可能会产生一些误差
比如
将3.141592612赋值,给一个float类型变量
它只能保证前7位,是有效的
示例代码
#include <stdio.h>
int main()
{
float a;
a=3.141592612;
printf("a=%.9f\n",a);
}
结果如下
输出结果为3.141592503
输出的值与给定的值之间有一些误差
原因,a是单精度浮点型变量,只能提供7位有效数字
超出了其取值范围,所以,后面的几位的精度产生了误差