我们平时用5/2=2是向下取整,而负数的话是-7/2=-3,是向上取整
在一些题目他会要求向上取整还是向下取整
可以用这个函数
函数原型
double floor(doube x);//都是double类型!!!
头文件
#include<math.h>
向上取整
ceil()
向下取整
floor()
如下面的程序
#include<stdio.h>
#include<stdlib.h>
#include<algorithm>
#include<string.h>
#include<map>
#include<string>
#include<math.h>
using namespace std;
int main()
{
int a=3;
int b=4;
int c;
int d;
c=(int)floor(1.0*(a+b)/2);//要注意之所以要乘1.0,是转换为double类型,结果再强制转化为int
d=(int)ceil(1.0*(a+b)/2);
printf("向下取整 (3+4)/2=%d\n",c);
printf("向上取整 (3+4)/=%d",d);
return 0;
}