一. 关于“取整”
首先谈谈关于数学取整的问题
1. 向0取整
C中的除法和取整规则都是向0取整,即所有小数都向 0 的方向取整:
示例:
#include <stdio.h>
int main()
{
// C中的除法和取整规则都是向0取整
int i = -2.9;
int j = 2.9;
printf("%d\n", i); // -2
printf("%d\n", j); // 2
return 0;
}
补充:C++11中有一个trunc(...)
取整函数,作用就是向0取整
2. 向负无穷取整
使用 floor(...)
函数,使得所有小数都向负无穷方向取整:
示例:
#include <stdio.h>