56度12牛栏山二锅头价:请教C语言的问题

来源:百度文库 编辑:中科新闻网 时间:2024/04/28 22:00:35
我先把我书上的原话写一下吧.

"如果除数或被除数中有一个为负值,则舍入的方向是不固定的,例-5/3在有的系统中得到的结果是-1,在有的系统则得到的结果是-2.多数C编译系统采取"向零取整"的方法,即5/3=1,-5/3=-1.取整后向零靠拢."

-19%4后,向零靠拢后不应该是得1嘛.

按“向零取整”的思想-19/4结果应该是-4,所以(-19)-(-4)×4应该是-3,所以-19%4=-3才对。要不按那种理解,19%4 结果不是3而应该是-1了,不可能吧?

这是我的一种理解!

这么理解: 负数取整涉及到一个取整后是大于原数还是小于原数的问题。“负数取整向零靠拢”的原则是取大于原数的整数,如-4.2取整为-4;但是数学上取整的原则是“取不大于原数的最小整数”,-4.2就应该取-5

老大,这是求余,不像题所说的是求整!
答案是-3!