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

1 本课主要内容:

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

2 主要知识点:

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

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

/**** (+,-,*,/)示例
 ****/
int a = 10;        // 把10的值赋给变量a
int b = a + 20;
    // 把a(10)跟20相和,再把结果赋给变量b(以下相同,先运算再赋值)
std::cout << "b = a(10)+20 = " << b << std::endl;
int c = a + b;
std::cout << "c = a(10)+b = " << c << std::endl;

int d = c - 5;
std::cout << "d = c-5 = " << d << std::endl;

int e = d*10;
std::cout << "e = d*10 = " << e << std::endl;

int f = (e+d)/3;
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--;)叫后置递减;前置递增/递减和后置递增/递减的差别如下:

// 前置递增、递减是先计算后返回数值;
// 后置递增、递减是先返回数值后计算;
int number = 10;
int n1 = ++number; // 前置递增,先计算number加1,后返回数值;所以结果:number为11,n1为11
int n2 = n1++;     // 后置递增,先返回数值,后计算n1加1;所以结果:n2为11,n1为12

number = 10;
int n3 = --number; // 前置递减,先计算number减1,后返回数值;所以结果:number为9,n3为9
int n4 = n3--;     // 后置递减,先返回数值,后计算n3减1;所以结果:n4为9,n3为8
  • 赋值运算符(上):=, +=, -=, *=, /=, %=

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

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

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

int a = 10;
a += 10;    // 等同于 a = a + 10; 结果a等于20
a -= 5;     // 等同于 a = a - 5; 结果a等于15
a *= 10;    // 等同于 a = a * 10; 结果a等于150
a /= 3;     // 等同于 a = a / 3; 结果a等于50
a %= 6;     // 等同于 a = a % 6; 结果a等于2
  • 关系运算符:==, !=, >, =,

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

const int a = 10;
const int b = 20;
const bool b1 = (a == 10);    // 结果为true
const bool b2 = (a != 10);    // 结果为false
const bool b3 = (a > b);      // 结果为false
const bool b4 = (a < b);      // 结果为true
const bool b5 = (a >= b);     // 结果为false
const bool b6 = (a >= 10);    // 结果为true
const bool b7 = (a <= b);     // 结果为false
const bool b8 = (a <= 10);    // 结果为true
  • 逻辑运算符:&&, ||, !

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

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

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

const int a = 10;
const int b = 20;
const bool c1 = (a >= 10 || b >= 20);    // 结果为true
const bool c2 = (a >= 10 || b > 20);     // 结果为true
const bool c3 = (a > 10 || b > 20);      // 结果为false

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

const int a = 10;
const int b = 20;
const bool c1 = (a >= 10);          // c1为true
const bool c2 = !c1;                // 结果为false
const bool c3 = !c2;                // 结果为true

3 课后练习:

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

 附录:在线视频课程

【C++程序员必修第一课】C++基础课程

你可能感兴趣的:(c++,开发语言,C++运算符)