• 【C++程序员必修第一课】C++基础课程-05:运算符(上)


    1 本课主要内容:

    • 算术运算符:+, -, *, /, %, ++, --
    • 赋值运算符(上):=, +=, -=, *=, /=, %=
    • 关系运算符:==, !=, >, =,
    • 逻辑运算符:&&, ||, !

    2 主要知识点:

    • 算术运算符:+, -, *, /, %, ++, --

    (+, -, *, /)很好理解 ,分别是加, 减, 乘, 除运算;需要注意(/)不能除以0;

    1. /**** (+,-,*,/)示例
    2. ****/
    3. int a = 10; // 把10的值赋给变量a
    4. int b = a + 20;
    5. // 把a(10)跟20相和,再把结果赋给变量b(以下相同,先运算再赋值)
    6. std::cout << "b = a(10)+20 = " << b << std::endl;
    7. int c = a + b;
    8. std::cout << "c = a(10)+b = " << c << std::endl;
    9. int d = c - 5;
    10. std::cout << "d = c-5 = " << d << std::endl;
    11. int e = d*10;
    12. std::cout << "e = d*10 = " << e << std::endl;
    13. int f = (e+d)/3;
    14. std::cout << "f = (e+d)/3 = " << f << std::endl;

    (%)取余数,例如(int a = 15 % 10;)计算 a 结果为5

    int a = 15 % 10;    // 结果为5

    (++, --)分别用于数值递增(加1)和递减(减1)运算;(++i)叫前置递增,(--i)叫前置递减;(i++)叫后置递增,(i--;)叫后置递减;前置递增/递减和后置递增/递减的差别如下:

    1. // 前置递增、递减是先计算后返回数值;
    2. // 后置递增、递减是先返回数值后计算;
    3. int number = 10;
    4. int n1 = ++number; // 前置递增,先计算number加1,后返回数值;所以结果:number为11,n1为11
    5. int n2 = n1++; // 后置递增,先返回数值,后计算n1加1;所以结果:n2为11,n1为12
    6. number = 10;
    7. int n3 = --number; // 前置递减,先计算number减1,后返回数值;所以结果:number为9,n3为9
    8. int n4 = n3--; // 后置递减,先返回数值,后计算n3减1;所以结果:n4为9,n3为8
    • 赋值运算符(上):=, +=, -=, *=, /=, %=

    (=)是最简单赋值语句,如(int a = 10;)将常量10的值赋给变量a

    1. int a = 10; // 简单赋值;结果a为10
    2. int b = (a+10)*10-10; // 运算后再赋值;结果b为190

    (+=, -=, *=, /=, %=)是执行运算后再把结果赋值,执行分别是加、减、乘、除、取余;例如(int a = 1; a += 2;)计算a结果为3

    1. int a = 10;
    2. a += 10; // 等同于 a = a + 10; 结果a等于20
    3. a -= 5; // 等同于 a = a - 5; 结果a等于15
    4. a *= 10; // 等同于 a = a * 10; 结果a等于150
    5. a /= 3; // 等同于 a = a / 3; 结果a等于50
    6. a %= 6; // 等同于 a = a % 6; 结果a等于2

    (==, !=, >, <, >=, <=)是关系运算符,用于判断二个变量之间的关系,分别是(==)等于、(!=)不等于、(>)大于、(<)小于、(>=)大于等于、(<=)小于等于的关系判断

    1. const int a = 10;
    2. const int b = 20;
    3. const bool b1 = (a == 10); // 结果为true
    4. const bool b2 = (a != 10); // 结果为false
    5. const bool b3 = (a > b); // 结果为false
    6. const bool b4 = (a < b); // 结果为true
    7. const bool b5 = (a >= b); // 结果为false
    8. const bool b6 = (a >= 10); // 结果为true
    9. const bool b7 = (a <= b); // 结果为false
    10. const bool b8 = (a <= 10); // 结果为true
    • 逻辑运算符:&&, ||, !

    (&&)逻辑与:二个操作数都为 true 结果为 true,否则为 false

    1. const int a = 10;
    2. const int b = 20;
    3. const bool c1 = (a >= 10 && b >= 20); // 结果为true
    4. const bool c2 = (a >= 10 && b > 20); // 结果为false

    (||)逻辑或:二个操作数任意一个为 true 结果为 true,否则为 false

    1. const int a = 10;
    2. const int b = 20;
    3. const bool c1 = (a >= 10 || b >= 20); // 结果为true
    4. const bool c2 = (a >= 10 || b > 20); // 结果为true
    5. const bool c3 = (a > 10 || b > 20); // 结果为false

    (!)逻辑非:操作数为 true 结果为 false;操作数为 false 结果为 true

    1. const int a = 10;
    2. const int b = 20;
    3. const bool c1 = (a >= 10); // c1为true
    4. const bool c2 = !c1; // 结果为false
    5. const bool c3 = !c2; // 结果为true

    3 课后练习:

    • 练习1:新建控制台应用,提示用户输入二个整数,然后应用(算术运算符:+, -, *, /, %, ++, --)做运算并输出结果
    • 练习2:新建控制台应用,提示用户输入二个整数,然后应用(关系运算符:==, !=, >, <, >=, <=)判断二个数值的关系,并打印结果

     附录:在线视频课程

    进入视频号学习本文配套视频课程。

    -【End】-

    哈喽,大家好!我是喜欢coding的小二,一枚“靓仔又不掉头发”的C++开发大头兵;欢迎围观公众号(20YC编程),定期会分享一些技术开发经验、行业资讯、业界动态等。期待您的关注,一起交流学习进步。

    #下载示例源码和开发工具,请进入公众号首页,点击(发消息)最下方的(资源下载)菜单即可获取。

    喜欢本文章,记得点赞、分享、关注哦~

  • 相关阅读:
    【infiniband监控】grafana变量使用细化优化监控指标
    TFRecord的Shuffle、划分和读取
    KMP算法真的有这么难吗?(清晰详细版)
    【Deepin Debian 系统安装RPD远程桌面工具Remmina】
    golang中逗号
    Linux开发工具 - vim篇
    Rust 笔记:Rust 语言中的字符串
    河北首家城商行传统核心业务国产化,TDSQL突破三“最”为秦皇岛银行保驾护航
    3-UI自动化-八大元素定位,xpath定位方式和相关的常问面试题
    Maven项目使用Checkstyle检查代码
  • 原文地址:https://blog.csdn.net/yanghz/article/details/133823147