<分区>
请解释以下背后的原因,因为在数学上正确的答案在这两种情况下都是 -2
:
int a=7%-5; //Assigns 2 to a
int a=-7%5; //Assigns -2 to a
代码在 C 中。
<分区>
请解释以下背后的原因,因为在数学上正确的答案在这两种情况下都是 -2
:
int a=7%-5; //Assigns 2 to a
int a=-7%5; //Assigns -2 to a
代码在 C 中。
最佳答案
7/-5 = -1
余数 2
,因为 -1 * -5 + 2 = 5 + 2 = 7
。
-7/5 = -1
和余数 -2
,因为 -1 * 5 + (-2) = -5 - 2 = -7
。
%
在 C++ 中是余数运算符(对于正数用作数学模运算符)。
关于c - 为什么 7%-5 给出 2 而 -7%5 给出 -2?在这两种情况下都不应该是 -2 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16585325/