取整函数是指不超过实数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]+….
C语言有以下几种取整方法:
1、直接赋值给整数变量。如:
int i = 2.5; 或 i = (int) 2.5;
这种方法采用的是舍去小数部分
2、C/C++中的整数除法运算符“/”本身就有取整功能(int / int),但是整数除法对负数的取整结果和使用的C编译器有关。
3、使用floor函数。floor(x)返回的是小于或等于x的最大整数。如:
floor(2.5) = 2
floor(-2.5) = -3
4、使用ceil函数。ceil(x)返回的是大于x的最小整数。如:
ceil(2.5) = 3
ceil(-2.5) = -2
floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。
C语言有以下几种取整方法: 1、直接赋值给整数变量。如: int i = 2.5; 或 i = (int) 2.5; 这种方法采用的是舍去小数部分,可以用于你的问题。 2、C/C++中的整数除法运算符“/”本身就有取整功能(int / int),而下面介绍的取整函数返回值是double。整数除法对正数的取整是舍去小数部分,可以用于你的问题。但是整数除法对负数的取整结果和使用的C编译器有关。 3、使用floor函数。floor(x)返回的是小于或等于x的最大整数。如: floor(2.5) = 2 floor(-2.5) = -3 4、使用ceil函数。ceil(x)返回的是大于x的最小整数。如: ceil(2.5) = 3 ceil(-2.5) = -2 floor()是向负无穷大舍入,floor(-2.5) = -3;ceil()是向正无穷大舍入,ceil(-2.5) = -2。floor函数可以用于你的问题。hyh的意见:int x,a,b,c,d;a=x/1000;b=x%1000/100;
C语言的取整是指将浮点数转换为整数,即只取整数部分。
这个操作并不是通过函数实现的,而是C语言的强制类型转换。
强制浮点数转换为整数的规则为,只取浮点数的整数部分,无条件舍去小数部分。
形式为
(int)float_number
于是
(int)
1.3
的结果为1。
(int)
2.9999的结果为2。
另一种常见的取整需求为四舍五入到整数,可以通过
(int)(float_number+0.5)
的方式实现。
即
(int)(1.49+0.5)
=
(int)1.99
=
1;
(int)(2.5+0.5)=(int)(3.0)
=
3。
在 C 语言中,取整的规则取决于使用的取整函数。
如果使用内置的取整函数 floor(),则取整的规则为向下取整,即取最大的整数,小于等于原数。例如:
floor(3.14) # 输出 3
floor(-3.14) # 输出 -4
如果使用内置的取整函数 ceil(),则取整的规则为向上取整,即取最小的整数,大于等于原数。例如:
ceil(3.14) # 输出 4
ceil(-3.14) # 输出 -3
如果使用内置的取整函数 round(),则取整的规则为四舍五入,即取最接近原数的整数。例如:
round(3.14) # 输出 3
round(3.5) # 输出 4
round(-3.14) # 输出 -3
round(-3.5) # 输出 -4
注意:floor() 和 ceil() 函数需要使用 math.h 头文件。
#include math.h
另外,还可以使用类型转换运算符(即 (int) 运算符)将浮点数强制转换成整型,实现取整的效果。例如:
(int)3.14 # 输出 3
(int)-3.14 # 输出 -3
但是这种方法不会准确地处理负数
(int)-3.5 # 输出 -3(不是正确的答案)
ceil和floor
floor(x),有时候也写做Floor(x),其功能是“下取整”,或者说“向下舍入”,即取不大于x的最大整数(与“四舍五入”不同,下取整是直接去掉小数部分),例如:x=3.14,floor(x)=3 y=9.99999,floor(y)=9
ceil是向上取整,例如:x=3.14,ceil(x)=4