我有一个UINT16无符号整数
4455, 312, 560 or 70.
Run Code Online (Sandbox Code Playgroud)
如何使用printf在最后两位数之前插入一个小数点,以便示例数字显示为
44.55, 3.12, 5.60 or 0.70
Run Code Online (Sandbox Code Playgroud)
如果没有printf解决方案,还有其他解决方案吗?
我不想使用浮点数.
%.2d 可以添加额外的填充零
printf("%d.%.2d", n / 100, n % 100);
Run Code Online (Sandbox Code Playgroud)
例如,如果n是560,则输出为:5.60
编辑:UINT16根据@Eric Postpischil的评论,我最初没有注意到它,最好使用:
printf("%d.%.2d", (int) (x/100), (int) (x%100));
Run Code Online (Sandbox Code Playgroud)