第二章:c语言中的表达式和运算符

三、表达式和运算符
复制代码
理解:表达式由字面值、变量、运算符组成的式子,通常有一个结果。
  1. 算术运算符

    运算符 含义 举例 结果
    + 正号运算符 +a a的值
    - 符号运算符 -a a的负数值
    + 加法运算符 a+b a和b相加
    - 减法运算符 a-b a和b相减
    * 乘法运算符 a*b a和b的乘积
    / 除法运算符 a/b a除以b
    % 取模(求余数) a%b a除以b对应的余数
    复制代码
    注意:
    (1) 优先级:先乘除、后加减,求余运算符和乘除同级
    (2) 结合性均为"左结合性",即同优先级的算术运算符按照 "从左往右" 进行
    
    注意:
    (1) 两个类型相同的操作数进行运算,其结果类型与操作数类型相同
        例如: 7/4  的结果为 1
    (2) 不同类型的数据要先转换成同一类型,然后进行计算,规则如下:
        char/short -> int -> unsigned -> long -> double
        float -> double
  2. 自增、自减 运算符

    运算符 含义 举例 结果
    ++ 自增 a++ / ++a a变量自身加1
    -- 自减 a-- / -- a a变量自身减1
    复制代码
    注意:
    (1) a++; / ++a; : 都是满足对a变量结果加1
        a--; / --a; : 都是满足对a变量结果减1
    (2) 对于表达式,前置 和 后置的区别: 【考试高频】
        int c = a++; // 先使用a的值,再对a进行加1 (先使用,再加1)
        int c = ++a; // 先对a自身加1,再使用a的值 (先加1,再使用)
  3. 赋值运算符

    赋值运算符 运算符含义
    = 赋值
    += a+=2; 对a变量值加2
    -= a-=3; 对a变量值减3
    *= a*=5; 对a变量值乘5
    /= a/=2; 对a变量值除以2
    %= a%=3; 对a变量值取3对应的余数
  4. 关系运算符

    关系运算符 运算符含义
    > 大于
    > = 大于等于
    < 小于
    <= 小于等于
    == 等于
    != 不等于
    复制代码
    注意:关系表达式的运算结果有两种:"真" 或是"假",关系成立-真-用1表示;关系不成立-假-用0表示
    例如:printf("%d",3>5); // 结果为:0
  5. 逻辑运算符

    逻辑运算符 运算符含义
    && 逻辑与,两边同时为真,结果为真
    || 逻辑或,两边只要有一边为真,结果就为真
    ! 逻辑非,在结果上取反
    复制代码
    优先级,从高到低:!(逻辑非) -> &&(逻辑与) -> ||(逻辑或) 
  6. 条件运算符(三元运算符)

    条件运算符 条件运算符含义
    关系表达式?表达式1:表达式2 关系成立,结果为真,则执行表达式1,否则执行表达式2
    复制代码
    例如: int a = 5>8 ? 100:50; // 结果为 a=50
相关推荐
阿里嘎多学长4 分钟前
2026-10-20 GitHub 热点项目精选
开发语言·程序员·github·代码托管
布吉岛的石头41 分钟前
Java 程序员第 50 阶段2:预训练的目标函数:自回归语言建模本质
java·开发语言·人工智能·深度学习·回归·transformer
小羊没烦恼!1 小时前
铁道部新客票系统设计(二)
开发语言·前端·数据库·python·oracle·c#·php
quantdash_cc2 小时前
从实时行情到价格观察表:用 Python 和 Pandas 构建策略输入数据
开发语言·python·数据分析·pandas·量化交易·股票数据·quantdash
昂好的day3 小时前
VisionMaster 通信模块实战(上):Modbus、TCP 收发、协议组装解析
开发语言·网络·网络协议·tcp/ip·c#
努力实干4 小时前
面向对象设计原则——C++
开发语言·c++·数码相机
NetX行者5 小时前
四语言 Hello World 背后:编译模型与运行时对比
开发语言
Pin_Qing6 小时前
账单没超,请求先被拒了
大数据·开发语言·人工智能
2601_962885726 小时前
如何用 Python 计算 VaR 和 CVaR(在险价值)?
开发语言·python
郝亚军6 小时前
manifest 中 `sha256` 与 `signValue` 的作用
java·开发语言·数据结构