#include <stdio.h>
//有效数据,从左边第一个不为0的数开始数,如1.000001001为10位有效数,0.000001001 有4个
int main()
{
//精确位6-7,%.20f表示保留20位小数
float var = 0.1234567891234567;
//精确位16-17
double var2 = 0.123412345671234;
printf("%.20f\n",var);
printf("%.20f\n",var2);
return 0;
}
.3f代表小数点后保留3位小数
%3d 表示输出3位整型数, 不够3位右对齐。
%9.2f 表示输出宽为9的浮点数, 其中小数位度为2, 整数位为6, 小数点占一位, 不够问9位右对齐。
如果字符串的长度、或整型数位数超过说明的场宽, 将按其实际长度输出。
但对浮点数, 若整数部分位数超过了说明的整数位宽度, 将按实专际整数位输出;
若小数部分位数超过了说明的小数位宽度, 则按说明的宽度以四舍五入输出。
对于整数和字符串来说,不存在精度问题。
对于浮点来说,所谓的精度是指小数位宽度。