c语言中 小数取整函数,取整函数,截去小数取整函数

EXCEL中对数字的处理中,经常根据需要按指定的位数进行取整。

数字取整可以用下述函数完成:

四舍五入取整 =ROUND(A1,0)

截去小数取整=ROUNDDOWN(A1,0) =FLOOR(A1,1) =TRUNC(A1)

截去小数取整为最接近的偶数 =EVEN(A1)

截去小数向上取整数 =CEILING(A1,1)

截去小数向下取整 =INT(A1)

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。

MATLAB中的取整函数很多,为方便以后使用把其用法列出来:

floor

B = floor(A) 返回小于或等于A的整数值,对于复数来说,分别对A的实部和虚部进行运算。

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =

Columns 1 through 6

-1.9000 -0.2000 3.4000 5.6000 7.0000 2.4000 + 3.6000i

floor(a)

ans =

Columns 1 through 6

-2.0000 -1.0000 3.0000 5.0000 7.0000 2.0000 + 3.0000i

ceil

B = ceil(A) 返回大于或等于A的整数值,对于复数来说,分别对A的实部和虚部进行运算。

a = [-1.9, -0.2, 3.4, 5.6, 7, 2.4+3.6i]

a =

Columns 1 through 6

-1.9000 -0.2000 3.4000 5.6000 7.0000 2.4000 + 3.6000i

ceil(a)

ans =

Columns 1 through 6

-1.0000 0 4.0000 6.0000 7.0000 3.0000 + 4.0000i

round:

Y = round(X) 返回距离X最近的整数值。

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =

Columns 1 through 4

-1.9000 -0.2000 3.4000 5.6000 7.0000 2.4000 + 3.6000i

round(a)

ans =

Columns 1 through 4

-2.0000 0 3.0000 6.0000 7.0000 2.0000 + 4.0000i

fix:

B = fix(A) 返回A的整数部分,小数部分为0

a = [-1.9, -0.2, 3.4, 5.6, 7.0, 2.4+3.6i]

a =

Columns 1 through 4

-1.9000 -0.2000 3.4000 5.6000 7.0000 2.4000 + 3.6000i

fix(a)

ans =

Columns 1 through 4

-1.0000 0 3.0000 5.0000 7.0000 2.0000 + 3.0000i

你可能感兴趣的:(c语言中,小数取整函数)