C语言菜鸟入门·运算符(算数运算符,关系运算符,逻辑运算符,位运算符,赋值运算符,三目运算符)详细介绍

目录

​编辑

1.  算术运算符

2.  关系运算符

3.  逻辑运算符

4.  位运算符

5.  赋值运算符

6.  杂项运算符 ↦ sizeof & 三元

6.1  sizeof()

6.2  &取地址运算符

6.3  *

6.4  三目运算符

7.  运算符优先级


        运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 语言内置了丰富的运算符,并提供了以下类型的运算符:

  • 算术运算符
  • 关系运算符
  • 逻辑运算符
  • 位运算符
  • 赋值运算符
  • 杂项运算符

1.  算术运算符

        C语言中常用的算术运算符有加法(+)、减法(-)、乘法(*)、除法(/)和取模(%)。

加法运算符(+)用于将两个操作数相加,例如:

int a = 5;
int b = 3;
int sum = a + b; // sum的值为8

减法运算符(-)用于将第一个操作数减去第二个操作数,例如:

int a = 5;
int b = 3;
int difference = a - b; // difference的值为2

乘法运算符(*)用于将两个操作数相乘,例如:

int a = 5;
int b = 3;
int product = a * b; // product的值为15

除法运算符(/)用于将第一个操作数除以第二个操作数,例如:

int a = 10;
int b = 3;
int quotient = a / b; // quotient的值为3

        需要注意的是,如果两个操作数都为整数,使用除法运算符(/)得到的结果也会是整数,即只保留整数部分。如果想要得到精确的浮点数结果,可以将其中一个操作数转换为浮点数类型。

取模运算符(%)用于求两个操作数相除的余数,例如:

int a = 10;
int b = 3;
int remainder = a % b; // remainder的值为1

        除了这些基本的算术运算符,C语言还提供了自增(++)和自减(--)运算符用于对变量进行加1或减1的操作。

运算符 描述 实例
+ 把两个操作数相加 A + B 将得到 30
- 从第一个操作数中减去第二个操作数 A - B 将得到 -10
* 把两个操作数相乘 A * B 将得到 200
/ 分子除以分母 B / A 将得到 2
% 取模运算符,整除后的余数 B % A 将得到 0
++ 自增运算符,整数值增加 1 A++ 将得到 11
-- 自减运算符,整数值减少 1 A-- 将得到 9

代码示例:

#include <stdio.h>
 
int main()
{
   int a = 21;
   int b = 10;
   int c ;
 
   c = a + b;
   printf("Line 1 - c 的值是 %d\n", c );
   c = a - b;
   printf("Line 2 - c 的值是 %d\n", c );
   c = a * b;
   printf("Line 3 - c 的值是 %d\n", c );
   c = a / b;
   printf("Line 4 - c 的值是 %d\n", c );
   c = a % b;
   printf("Line 5 - c 的值是 %d\n", c );
   c = a++;  // 赋值后再加 1 ,c 为 21,a 为 22
   printf("Line 6 - c 的值是 %d\n", c );
   c = a--;  // 赋值后再减 1 ,c 为 22 ,a 为 21
   printf("Line 7 - c 的值是 %d\n", c );
 
}

运行结果:

2.  关系运算符

        在C语言中,关系运算符用于比较两个值之间的关系,并返回一个布尔值(0表示假,非0表示真)。

以下是C语言中常用的关系运算符:

  • 相等(==):判断两个操作数是否相等。
  • 不等(!=):判断两个操作数是否不相等。
  • 大于(>):判断第一个操作数是否大于第二个操作数。
  • 小于(<):判断第一个操作数是否小于第二个操作数。
  • 大于等于(>=):判断第一个操作数是否大于等于第二个操作数。
  • 小于等于(<=):判断第一个操作数是否小于等于第二个操作数。

下面是一些使用关系运算符的例子:

int a = 5;
int b = 3;

if (a == b) {
    // 执行代码块,当a等于b时
}

if (a != b) {
    // 执行代码块,当a不等于b时
}

if (a > b) {
    // 执
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时光の尘

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值