刚开始是C。例如,给定数字float $ 25.50。我想分别显示美元和美分。因此,对于美元,我可以使用%.0f显示25。如何仅显示50?

最佳答案

四舍五入到最接近的一分。
分为整体和小数部分。
打印

 float amount = 25.50;

 amount = roundf(amount*100.0f)/100.0f;
 float dollars, cents;
 cents = modff(amount, &dollars);
 printf("%.0f Dollars  %.0f Cents\n", dollars, cents*100);

舍入对于处理1.996打印为“1 Dollars 100 cents”很重要。
modf()很好地将小数与浮点数的整数部分分开。
使用modf()作为double

Jonathan Leffler在使用doublefloat有关货币方面是有钱的。

关于c - 在C中仅显示浮点数25.50的最简单方法是什么?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28114295/

10-11 11:41