如何在C中四舍五入到最接近的.05或.10?

时间:2015-10-16 08:26:03

标签: c

我尝试过使用ceil函数,但它将它舍入为最接近的整数。我的计划旨在将订阅价格调整到最接近的0.05,例如19.83到19.85,或最接近的0.1,例如19.88到19.90

我该怎么做?

2 个答案:

答案 0 :(得分:2)

乘以某物,然后再分开。

留下一些东西作为练习(提示:它与"最近的"相关)。

答案 1 :(得分:0)

对于你的例子:

SELECT Count(*) AS count, 
SUM(IF (DATE_ADD(added, INTERVAL 1 YEAR) > NOW(), 1, 0)) AS num_1year,
SUM(IF (DATE_ADD(added, INTERVAL 1 YEAR) < NOW() AND DATE_ADD(added, INTERVAL 2 YEAR) > NOW(), 1, 0)) AS num_2year,
SUM(IF (DATE_ADD(added, INTERVAL 2 YEAR) < NOW() AND DATE_ADD(added, INTERVAL 3 YEAR) > NOW(), 1, 0)) AS num_3year
FROM users

进一步学习:

通过将ex乘以100,可以确保它是整数。现在,如果你做任何数字%(模数),它将返回你分开任何东西后剩下的什么。 ex2%50基本上是这样做的。现在只有一个适当地向上或向下舍入的情况。