7 % 3 = 1 (remainder 1)
Run Code Online (Sandbox Code Playgroud)
怎么做
3 % 7 (余数?)
工作?
一样的方法.商为0(3/7,丢弃小数部分).其余的则满足:
(a / b) * b + (a % b) = a
(3 / 7) * 7 + (3 % 7) = 3
0 * 7 + (3 % 7) = 3
(3 % 7) = 3
Run Code Online (Sandbox Code Playgroud)
这在C99§6.5.5,乘法运算符中定义.
小智 5
从概念上讲,我是这样认为的。根据定义,您的股息必须等于(quotient * divisor) + modulus
或者,求解模数: modulus = dividend - (quotient * divisor)
当被除数小于除数时,商始终为零,这导致模数仅等于被除数。
用 OP 的值来说明:
modulus of 3 and 7 = 3 - (0 * 7) = 3
Run Code Online (Sandbox Code Playgroud)
用其他值来说明:
1 % 3:
1 - (0 * 3) = 1
2 % 3:
2 - (0 * 3) = 2
Run Code Online (Sandbox Code Playgroud)