C语言float有效位数和小数点后位数问题

2024-12-04 19:42:58
推荐回答(1个)
回答1:

(1) 有问题.
float a=0.000123456; // 有效位数字6位,小数点后...
printf("%20.10f",a);
可以输出 0.0001234560
(2) 0.000001和1E-6在内存中的存储内容是一样的.
输出显示 与格式有关,可以定点格式,可以科学记数格式,位数场宽都可自己给定。

a=1E-8 看你给的格式。
float a=1E-8;
printf("%20.10f ",a);
printf("%g",a);
0.0000000100 1e-008