3.4.3 浮点型变量
浮点型变量是用于表示包含小数点的数据类型。浮点型变量的一般定义格式是“类型说明符变量标识符,变量标识符……”,示例如下。
float a,b;//定义a、b为单精度浮点型变量
double c,d;//定义c、d为双精度浮点型变量
同整型变量一样,浮点型变量也可以同时定义多个。C51支持3种浮点型变量类型,即float类型、double类型和long double类型。但是在C51中不具体区分这3种类型,它们都被当做float类型对待,因此,这3种浮点类型的精度和取值范围相同。浮点类型变量的字长为4个字节,共32位二进制数,取值范围为3.4x10-38~3.4×10+38。浮点型变量的示例程序如下。
include<stdio.h>//头文件
void main()//主函数
{
float a;//定义a为单精度浮点型变量
double b;//定义b为双精度浮点型变量
a=8976.1538;//赋值
b=6950.2692;
printf(“a=%f\nb=%f\n”,a,b);//打印输出结果
}
该程序可在KeilµVision3集成开发环境中运行,执行结果如下。
a=8976.154000
b=6950.269000
在本例中,a为单精度浮点型变量,有效位数是7位,因此最后四舍五入为8976.154。b为双精度浮点型变量,但在C51中仍按float型处理,所以有效位数也是7位,因此最后四舍五入为6 950.269。
注意在C51中,浮点型数据均为有符号浮点数,而没有无符号浮点数,字节最高位表示数据的符号,所以浮点型变量的有效位数是7位。