可能重复:
使用 printf 打印浮点数时有额外的前导零?
我试图让这个 C 程序的输出具有占位符零,因为这个程序的输出将用作另一个程序的输入。现在,我正在使用以下打印行。
fprintf(fp1, "06 BR%d%d %3.4f%3.4f%3.4f\n",i,d,X,Y,Z);
i = index for the loop
d = index for a second loop
X = double for a Cartesian system
Y = double for a Cartesian system
Z = double for a Cartesian system
现在输出如下所示:
06 BR12 1.00001.00001.0000
我希望它如下所示:
06 BR0102 001.0000001.0000001.000
我知道我可以手动添加占位符零(如果 i<10,添加占位符等),但是有没有比简单地在 if 语句中添加占位符更有效的方法来输出占位符零?
先感谢您。