C 语言运算符
运算符
运算符用于对变量和值执行操作。
在下面的例子中,我们使用 + 运算符将两个值相加:
实例
int myNum = 100 + 50;
虽然 + 运算符通常用于将两个值相加,如上例所示,但它也可以用于将一个变量和一个值相加,或者将一个变量和另一个变量相加:
实例
int sum1 = 100 + 50; // 150 (100 + 50) int sum2 = sum1 + 250; // 400 (150 + 250) int sum3 = sum2 + sum2; // 800 (400 + 400)
C 将运算符分为以下几组:
- 算术运算符
- 赋值运算符
- 比较运算符
- 逻辑运算符
- 位运算符
算术运算符
算术运算符用于执行常见的数学运算。
| 运算符 | 名称 | 例子 | 描述 | 试一试 |
|---|---|---|---|---|
| + | 加法 | x + y | 将两个值相加。 | 试一试 |
| - | 减法 | x - y | 从值中减去另一值。 | 试一试 |
| * | 乘法 | x * y | 将两个值相乘。 | 试一试 |
| / | 除法 | x / y | 将值除以另一值。 | 试一试 |
| % | 取余 | x % y | 返回除法的余数。 | 试一试 |
| ++ | 递增 | ++x | 将变量的值增加 1。 | 试一试 |
| -- | 递减 | --x | 将变量的值减 1。 | 试一试 |
赋值运算符
赋值运算符用于给变量赋值。
在下面的示例中,我们使用赋值运算符 (=) 将值 10 赋给名为 x 的变量:
实例
int x = 10;
加法赋值运算符 (+=) 将值添加到变量:
实例
int x = 10; x += 5;
所有赋值运算符的列表:
| 运算符 | 例子 | 等同于 | 试一试 |
|---|---|---|---|
| = | x = 5 | x = 5 | 试一试 |
| += | x += 3 | x = x + 3 | 试一试 |
| -= | x -= 3 | x = x - 3 | 试一试 |
| *= | x *= 3 | x = x * 3 | 试一试 |
| /= | x /= 3 | x = x / 3 | 试一试 |
| %= | x %= 3 | x = x % 3 | 试一试 |
| &= | x &= 3 | x = x & 3 | 试一试 |
| |= | x |= 3 | x = x | 3 | 试一试 |
| ^= | x ^= 3 | x = x ^ 3 | 试一试 |
| >>= | x >>= 3 | x = x >> 3 | 试一试 |
| <<= | x <<= 3 | x = x << 3 | 试一试 |
比较运算符
比较运算符用于比较两个值(或变量)。这在编程中很重要,因为它可以帮助我们找到答案并做出决策。
比较的返回值为 1 或 0,表示 true (1) 或 false (0)。这些值被称为布尔值,您将在布尔值和 If..Else 章节中了解有关它们的更多信息。
在下面的例子中,我们使用大于运算符 (>) 来判断 5 是否大于 3:
实例
int x = 5;
int y = 3;
printf("%d", x > y); // 返回 1(真),因为 5 大于 3
所有比较运算符的列表:
| 运算符 | 名称 | 例子 | 描述 | 试一试 |
|---|---|---|---|---|
| == | 等于 | x == y | 如果值相等则返回 1。 | 试一试 |
| != | 不等于 | x != y | 如果值不相等则返回 1。 | 试一试 |
| > | 大于 | x > y | 如果第一个值大于第二个值,则返回 1。 | 试一试 |
| < | 小于 | x < y | 如果第一个值小于第二个值,则返回 1。 | 试一试 |
| >= | 大于或等于 | x >= y | 如果第一个值大于或等于第二个值,则返回 1。 | 试一试 |
| <= | 小于或等于 | x <= y | 如果第一个值小于或等于第二个值,则返回 1。 | 试一试 |
逻辑运算符
您还可以使用逻辑运算符测试真值或假值。
逻辑运算符用于确定变量或值之间的逻辑:
| 运算符 | 名称 | 例子 | 描述 | 试一试 |
|---|---|---|---|---|
| && | 逻辑与 | x < 5 && x < 10 | 如果两个语句都为真,则返回 1。 | 试一试 |
| || | Logical or | x < 5 || x < 4 | 如果两个语句中至少有一个为真,则返回 1。 | 试一试 |
| ! | Logical not | !(x < 5 && x < 10) | 将结果取反,如果结果为 1 则返回 0。 | 试一试 |