3 数据类型、运算符与表达式-3.8 算术运算符和算术表达式

C语言的运算符可分为以下几类:

  1. 算术运算符:用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、
    自增(++)、自减(–)共七种。
  2. 关系运算符:用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种。
  3. 逻辑运算符:用于逻辑运算。包括与(&&)、或(||)、非(!)三种。
  4. 位操作运算符:参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、
    位异或(^)、左移(<<)、右移(>>)六种。
  5. 赋值运算符:用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位
    运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
  6. 条件运算符:这是一个三目运算符,用于条件求值(?😃。
  7. 逗号运算符:用于把若干表达式组合成一个表达式(,)。
  8. 指针运算符:用于取内容(*)和取地址(&)二种运算。
  9. 求字节数运算符:用于计算数据类型所占的字节数(sizeof)。
  10. 特殊运算符:有括号(),下标[],成员(→,.)等几种。

代码案例

#include <stdio.h>

main()
{
    /* 〖例 3.14〗 本例中,20/7,-20/7 的结果均为整型,小数全部舍去。而 20.0/7 和-20.0/7 由于有实数参与运算,因此结果也为实型。
        求余运算符(模运算符)“%”:双目运算,具有左结合性。要求参与运算的量均为整型。
        求余运算的结果等于两数相除后的余数。
    */
    printf("\n\n%d,%d\n", 20 / 7, -20 / 7);
    printf("%f,%f\n", 20.0 / 7, -20.0 / 7);

    /* 【例 3.15】本例输出 100 除以 3 所得的余数 1。 */
    printf("%d\n", 100 % 3);

    /* 【例 3.16】 i 的初值为 8,第 2 行 i 加 1 后输出故为 9;第 3 行减 1 后输出故为 8;第 4 行输出 i 为
        8 之后再加 1(为 9);第 5 行输出 i 为 9 之后再减 1(为 8) ;第 6 行输出-8 之后再加 1(为 9),
        第 7 行输出-9 之后再减 1(为 8)。 */

    // int i = 8;
    // printf("%d\n", ++i);
    // printf("%d\n", --i);
    // printf("%d\n", i++);
    // printf("%d\n", i--);
    // printf("%d\n", -i++);
    // printf("%d\n", -i--);

    /* 【例 3.17】 这个程序中,对 P=(i++)+(i++)+(i++)应理解为三个 i 相加,故 P 值为 15。然后 i 再自增 1
        三次相当于加 3 故 i 的最后值为 8。而对于 q 的值则不然,q=(++j)+(++j)+(++j)应理解为 q
        先自增 1,再参与运算,由于 q 自增 1 三次后值为 8,三个 8 相加的和为 24,j 的最后值仍
        为 8。 */
    int i = 5, j = 5, p, q;
    p = (i++) + (i++) + (i++);
    q = (++j) + (++j) + (++j);
    printf("%d,%d,%d,%d", p, q, i, j);

    return 0;
}

相关推荐

  1. 运算符表达式

    2024-06-11 22:16:02       33 阅读
  2. C++运算符表达式

    2024-06-11 22:16:02       35 阅读
  3. Python运算符表达式数据类型及常用关键字

    2024-06-11 22:16:02       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-11 22:16:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-11 22:16:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-11 22:16:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-11 22:16:02       20 阅读

热门阅读

  1. kivy 画画

    2024-06-11 22:16:02       6 阅读
  2. 在Windows上,使用RDP连接Ubuntu 22.04

    2024-06-11 22:16:02       14 阅读
  3. C#面:请解释web.config⽂件中的重要节点

    2024-06-11 22:16:02       11 阅读
  4. 服务器升级Nacos2.2.3报错、rocksdb报错问题处理

    2024-06-11 22:16:02       6 阅读
  5. Django:如何将多个数据表内容合在一起返回响应

    2024-06-11 22:16:02       7 阅读
  6. ssh远程管理和nfs共享存储服务

    2024-06-11 22:16:02       8 阅读
  7. nginx自签证书生成及配置

    2024-06-11 22:16:02       10 阅读
  8. BigDecimal金额计算以及实战运用问题记录

    2024-06-11 22:16:02       8 阅读
  9. 【Mysql】mysql 拼接字符

    2024-06-11 22:16:02       7 阅读
  10. C++之assert惯用法

    2024-06-11 22:16:02       8 阅读