在 C语言中 取整 ,求余的符号各是什么?

Python011

在 C语言中 取整 ,求余的符号各是什么?,第1张

如果操作数是整数,那么就是整除,否则就是浮点除,求余的符号是%。

1、通常情况下取模运算(mod)和求余(rem)运算被混为一谈,因为在大多数的编程语言里,都用'%'符号表示取模或者求余运算。在这里要提醒大家要十分注意当前环境下'%'运算符的具体意义,因为在有负数存在的情况下,两者的结果是不一样的。

2、求模运算和求余运算在第一步不同: 取模求余运算在取c的值时,向0 方向舍入(fix()函数); 而求余取模运算在计算c的值时,向无穷小方向舍入(floor()函数)。

3、当a和b符号一致时,求模运算和求余运算所得的c的值一致,因此结果一致。但是当符号不一致的时候,结果不一样。具体来说,求模运算结果的符号和b一致,求余运算结果的符号和a一致。

4、在C语言中,%符号表示的是求余运算,在Python脚本中,%表示的是取模。

参与运算量均为整型时,

结果也为整型,舍去小数。如果运算量中有一个是实型,则结果为双精度实型。

printf("%d,%d\n",10/3,-10/3)

printf("%f,%f\n",10.0/3,-10.0/3)

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)

=

2

floor和ceil对于正数没有区别,但是对于负数结果不同。