C 编译器中如何存储浮点数?!
在C编程语言中,float是浮点数的简称。
浮点数通常以电气和电子工程师协会(IEEE)格式的形式表示。
IEEE格式使用符号位、尾数和指数来表示2的幂。
符号位表示数字的符号:0表示正值,1表示负值。
转换为规范化形式后以二进制表示的尾数。归一化尾数后,最高有效位始终为1。
指数是在加上正整数偏差后以无符号二进制格式存储的整数。
这确保存储的指数始终为正。
对于浮点数,偏差为127,对于双精度数,偏差为1023。
示例
以下是C语言中将浮点数四舍五入到小数点后四位的C程序-
#include输出结果int main(){ float var = 37.66666; printf("%.4f", var);//四舍五入到小数点后四位 return 0; }
执行上述程序时,会产生以下结果-
37.6667
以下是用C语言将浮点数四舍五入到小数点后八位的C程序-
程序
#include输出结果int main(){ float var = 78.67; printf("%.8f", var); return 0; }
执行上述程序时,会产生以下结果-
78.66999817