C语言数学函数ceil(), floor(), round()
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:申请域名、网络空间、营销软件、网站建设、马鞍山网站维护、网站推广。
#include math.h
double ceil(double x);
double floor(double x);
double round(double x);
ceil(x)返回不小于x的最小整数值(然后转换为double型)。
floor(x)返回不大于x的最大整数值。
round(x)返回x的四舍五入整数值。
用 法: double ceil(double x);
功 能: 返回大于或者等于指定表达式的最小整数
头文件:math.h
说明:
float ceil ( float value )
返回不小于 value 的下一个整数,value 如果有小数部分则进一位。ceil() 返回的类型仍然是 float,因为 float 值的范围通常比 integer 要大。
#includestdio.h
#includemath.h
intmain(void)
{
double number=123.54;
double down,up;
down=floor(number);
up=ceil(number);
printf("originalnumber%5.2lf\n",number);
printf("numberroundeddown%5.2lf\n",down);
printf("numberroundedup%5.2lf\n",up);
return0;
}
运行结果:
originalnumber123.54
numberroundeddown123.00
numberroundedup124.00
取整函数是指不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x)。该函数被广泛应用于数论,函数绘图和计算机领域。
定义:
不超过实数x的最大整数称为x的整数部分,记作[x]或INT(x)。
x-[x]称为x的小数部分,记作{x}。
(需要注意的是,对于负数,[x]并非指x小数点左边的部分,{x}也并非指x小数点右边的部分,例如对于负数-3.7,[-3.7]=-4,而不是-3,此时{x}=-3.7-(-4)=0.3,而不是-0.7.)
性质
性质1 对任意x∈R,均有x-1[x]≤x[x]+1.
性质2 对任意x∈R,函数y={x}的值域为[0,1).
性质3 取整函数(高斯函数)是一个不减函数,即对任意x1,x2∈R,若x1≤x2,则[x1]≤[x2].
性质4 若n∈Z,x∈R,则有[x+n]=n+[x],{n+x}={x}.后一式子表明y={x}是一个以1为周期的函数.
性质5 若x,y∈R,则[x]+[y]≤[x+y]≤[x]+[y]+1.
性质6 若n∈N+,x∈R,则[nx]≥n[x].
性质7 若n∈N+,x∈R+,则在 区间[1,x]内,恰好有[x/n]个整数是n的倍数.
性质8 设p为 质数,n∈N+,则p在n!的 质因数 分解式中的幂次为
p(n!)=[n/p]+[n/p 2]+….
ceil是取整函数
ceil(x)返回的是大于x的最小整数。
如: ceil(2.5) == 3 ceil(-2.5) ==-2
还有一个floor函数,也是取整函数
floor(x)返回的是小于或等于x的最大整数。
如: floor(2.5) == 2 floor(-2.5) == -3