算数运算和自增自减运算(C++)

引言

表示运算的符号称为运算符。

  • 算数运算
  • 比较运算
  • 逻辑运算
  • 位运算

1.算术运算

  • 算数运算包括加、减、乘、除、乘方、指数、对数、三角函数、求余数等,这些都是算数运算。
  • C++中,+,-,*,/,%分别表示加、减、乘、除和求余运算。
  • 若a,b都是整数,则a%b表示a除以b的余数,如:
    int a=26;//声明整型变量a并初始化为26
    int b=10;//整型变量b并赋初值10
    cout<<a%b<<endl;
    得到的结果就是6
    注意: ☛运算符作用的对象称为操作数,%运算的两个操作数,必须都是整数。

注意事项:

  1. 乘法运算符不能省略,例如
    ★数学中写b²-4ac,程序中应写为bb-4.0a*c
  2. 除数是表达式时注意加括号,例如
    ★数学中x/2a应写为x/2.0/a 或 x/(2.0*a)

其他算数运算的实现

  • c++中没有乘方运算符,也没有指数、对数、三角函数的运算符,它们是通过函数的调用实现的。如:
    pow(x,n) x^n
    exp(x) e^x
    log(x) x的自然对数的对数
    log10(x) x的常用对数
    sin(x) x的正弦
    cos(x)
    tan(x)
  • 他们都属于数学函数,使用时需要在程序的开头写
#include<cmath>

例如:

#include<iostream>
#include<cmath>
using namespace std;
int main()
{
double x;
cin>>x;
cout<<"sin(x)="<<sin(x)<<endl;
cout<<"cos(x)="<<cos(x)<<endl;
cout<<"tan(x)="<<tan(x)<<endl;
return 0;

}

2.自增自减运算符

  • i=i+1

  • i=i-1

  • 自增运算符++

  • 自减运算符–

  • i++, i–,++i.–i
    前置++:++i, 前置–:--i
    后置++:i++, 后置–:i–

  • 双目运算(二元运算):运算符需要两个操作数

  • 单目运算 (一元运算):运算符需要一个操作数

作用

  1. 无论前置、后置,++使变量自身加1,–使变量自身减1。
    int n=5,m=10;
    n++;//相当于n=n+1;
    m–;//相当于m=m-1;
    cout<<n<<endl;//结果为6
    cout<<m<<endl;//结果为9

  2. 作为表达式时,前置运算符的结果是加1或减1之后的结果;后置运算符的结果是加1或减1之前的结果

建议

  1. 使用单独的表达式语句
  2. 尽量不将其放入表达式中

3.算数运算符的优先级

  1. 先乘除求余,后加减,级别相同的从左向右依次计算
  2. 括号可以改变优先级
  3. 圆括号可以嵌套,越靠里,圆括号的优先级越高。
  4. %和*,/ 优先级别相同
  5. 后置++、–的优先级>前置++、–的优先级>>乘除的优先级

4.运算的数据类型

  1. 相同类型的数据进行 算数运算,结果还是这种数据类型
  2. 不同类型的数据运算,默认向级别高的类型转换
    short(低)→char→int→unsigned→long→double(高)
  3. 强制类型转换
    (<类型>)x或<类型>(x)
    将x转换为<类型>数据
    ✦x可以是表达式
    (double)a/b
    int(3.0/2.0)
    double(1/2)

5.复合运算符

  • 为简化书写,C++提供混合算数运算符
    +=,-=,*=,/=,%=

  • 双目运算
    a+=b; 等价于 a=a+b;
    a-=b ; a=a-b;
    a*=b ; a=a*b;
    a/=b; a=a/b;
    a%=b ; a=a%b;
    **注意:**☛ 1/2 结果为0
    1.0/2 结果为0.5
    int a=7,b=3;
    double c;
    若想得到a除b的实数结果 c=(double)a/b;

猜你喜欢

转载自blog.csdn.net/Yangye_1018/article/details/105968385
今日推荐