关于C语言取余与取模运算的问题,求详细解释。

以下这段话我还是看不懂,特别是;“而取模运算再计算c的值时,像负无穷方向舍入”对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求整数商:c=a/b;2.计算模或... 以下这段话我还是看不懂,特别是;“而取模运算再计算c的值时,像负无穷方向舍入”

对于整型数a,b来说,取模运算或者求余运算的方法都是:1.求整数商: c = a/b;2.计算模或者余数: r = a - c*b.求模运算和求余运算在第一步不同: 取余运算在取c的值时,向0 方向舍入(fix()函数);而取模运算在计算c的值时,向负无穷方向舍入(floor()函数)。 例如:计算-8 % 3那么:a = -8;b = 3;第一步:求整数商c,(float)c = a/b = -2.67 ,如进行求模运算c = -3(向负无穷方向舍入),求余c = -2(向0方向舍入);第二步:计算模和余数的公式相同,但因c的值不同,求模时r = 1,求余时r = -2。 归纳:当a和b符号一致时,求模运算和求余运算所得的c的值一致,因此结果一致。当符号不一致时,结果不一样。求模运算结果的符号和b一致,求余运算结果的符号和a一致。
展开
 我来答
百度网友2018359
2017-05-07 · TA获得超过3494个赞
知道大有可为答主
回答量:3486
采纳率:73%
帮助的人:1419万
展开全部
它不是说得很详细了么, 向负无穷方向舍入(floor()函数 (又称为地板函数, 与之相对还有天花板函数)--往小方向取整,即向负无穷方向取整), 8/3=2.67的地板为2(即模为2), -8/3=-2.67的地板为-3(即模为-3)
追问
地板是不是就是原点,以0为原点的方向是吗?
追答
不是原点, 可以看成大和小
floor(2.67)=2 //比2.67小的取整
floor(-2.67)=-3 //比-2.67小的取整
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式