算术运算符
运算符 | 术语 | 示例 | 结果 |
---|---|---|---|
+ | 正号 | +3 | 3 |
- | 负号 | -3 | -3 |
+ | 加 | 10 + 5 | 15 |
- | 减 | 10 - 5 | 5 |
* | 乘 | 10 * 5 | 50 |
/ | 除 | 10 / 5 | 2 |
% | 取模(取余) | 10 % 3 | 1 |
++ | 前⾃增 | a=2; b=++a; | a=3; b=3; |
++ | 后⾃增 | a=2; b=a++; | a=3; b=2; |
-- | 前⾃减 | a=2; b=--a; | a=1; b=1; |
-- | 后⾃减 | a=2; b=a--; | a=1; b=2; |
算术运算符包含 +
, -
, *
, /
, %
,它们分别表示加,减,乘,除,取余。算术运算符比较简单,不过其中 /
和 %
需要我们特别注意:
如果
/
的两个操作数都是整数,那么结果也是整数,因此- 1 / 2 和 (- 1 / 2)的结果都为 0
- (-3 / 2) 的结果是-1,而不是-2
+
,-
,*
,/
可以用于浮点数,但%
要求两个操作数都是整数。取模运算就是取余数,如果允许出现小数,那就没有余数了。
在C语言中,%运算的结果符号总是和被除数保持一致。取模运算的结果遵循以下公式:
(a % b) = a - (a / b) * b
取余运算的结果可能为负数,比如
-9 % 7
的值为 -2。假设i
,j
都是整数,那么它们满足公式:i = (i / j) * j + (i % j)
。i % j
的符号总是和i
的符号相同。