我希望在我的fprintf中使用%f和%g的某种组合。如果有6个小数不为零,我希望去掉尾随的零,并使用6个小数点。%g删除零,但这里的精度不会影响小数点的数量。该怎么办呢?
发布于 2012-05-09 17:16:16
因此,如果这是您想要的行为:
0.123456789 -> 0.123457 (小数点后第6位四舍五入)
999.123456789 -> 999.123457 (六位小数,不管有多少有效数字)
1.123000000 -> 1.123 (删除尾随零)
然后,您可以使用%f:
fprintf('%.6f', number);发布于 2012-05-09 17:58:28
您可以使用%.<n>g,其中n定义要使用的最大位数。
>> fprintf('%.6g\n', 4087.145678);
4087.15
>> fprintf('%.6g\n', 45.2);
45.2https://stackoverflow.com/questions/10512918
复制相似问题