5.4 什么是运算符
运算符是指可以进行运算操作的符号。而提供给运算符进行操作的对象我们把它们叫做操作数。C++有好几类运算符,其中最常用的是:赋值运算符,数学运算符。
赋值运算符“=”可以实现对变量或符号常量进行赋值的功能,即将“=”右边的值赋给“=”左边的变量或者符号常量。
程序演示1:
# include <iostream>
using namespacestd;
int main()
{
int x = 30%20;
cout<<x<<endl;
for(inti=0;i<60;i++)
{
if(i%6 == 0)
{
cout<<endl;
}
cout<<i<<'\t';
}
return 0;
}
算术运算符即可以实现对操作数进行数学运算的功能。
+ 加法运算符
- 减法运算符
* 乘法运算符
/ 除法运算符
% 取余运算符
int x = 30%20;
cout<<x<<endl;
取余运算符%用来求出两操作数相除的余数,比如说30除以20,它的结果为1余10,这样余数就是10。
取余运算符的作用是求出两数相除的余数。
%运算的两个操作数必须都是整数。
for(inti=0;i<60;i++)
{
if(i%6 == 0)
{
cout<<endl;
}
cout<<i<<'\t';
}
找出余数是很有用的,比如说你有60个数字要输出,你又想要它们每行只输出6个数字,共分10行来输出。这样就需要用到余数,我们知道只有6的倍数除以6余数方为0,因此可以通过对6取余来实现这一程序。
if语句判断i除以6的余数是否为0,假如为0,那么表示一行已经输出完毕,我们要换到下一行继续输出。
因此执行大括号中的语句,输出一个换行,切换到下一行的开头,再接着输出i的值,同时输出一个制表符’\t’,该符号的作用将输出的数据排列得整齐。
每输出6个数字,换到下一行的开头,再次输出。
这就是取余运算符的作用。
【运算的数据类型】
(1)相同类型的数据进行算术运算,结果还是这种数据类型。
(2)不同类型的数据运算,默认向高级别的类型转换。
short,char->int->unsigned->long->double
(3)强制类型转换
(<类型>)x 或 <类型>(x)
将x转换为<类型>的数据,x可以是表达式
程序演示2:
#include<iostream>
using namespacestd;
int main()
{
cout<<1+2<<endl;
cout<<1-2<<endl;
cout<<1*2<<endl;
cout<<1/2<<endl;
cout<<"-----"<<endl;
cout<<1.0+2.0<<endl;
cout<<1.0-2.0<<endl;
cout<<1.0*2.0<<endl;
cout<<1.0/2.0<<endl;
cout<<"-----"<<endl;
cout<<1/2.0<<endl;
cout<<1.0/2<<endl;
cout<<"-----"<<endl;
cout<<(double)1/2<<endl;
cout<<double(1/2)<<endl;
cout<<int(3.0/2.0)<<endl;
}
【其他算术运算的实现】
C++中没有乘方运算符,也没有指数、对数、三角函数的运算符,它们是通过函数的调用实现的。如
pow(x,n) xn
exp(x) ex
log(x) x的自然对数的对数
log10(x) x的常用对数
sin(x) x的正弦(弧度)
cos(x) x的余弦(弧度)
tan(x) x的正切(弧度)
asin(x) 反正弦函数 x属于[-1,1]
它们都属于数学函数,使用时需要在程序的开头写
#include<cmath>
程序演示3:
#include <iostream>
#include <cmath>
using namespacestd;
int main()
{
double x;
cin>>x;
x = 3.1415926*x/180;
cout<<"sin(x) = "<<sin(x)<<endl;
cout<<"cos(x) = "<<cos(x)<<endl;
cout<<"tan(x) = "<<tan(x)<<endl;
return 0;
}
通过微信学习的知识只能是碎片化的知识,作为新时代的我们希望能够构建自己的知识结构,使我们的知识体系化,系统化,以后在遇到碎片化的知识,我们做的只是融合到自己的知识结构中,故我们将推出“与LSGO一起学”系列课程,帮助大家来构建知识框架,初步规划有:
“与LSGO一起学C++”;
“与LSGO一起学C#”;
“与LSGO一起学Matlab”;
“与LSGO一起学数据结构”;
“与LSGO一起学设计模式”;
“与LSGO一起学可视化建模语言(UML)”;
“与LSGO一起学线性代数”;
“与LSGO一起学高等数学”
“与LSGO一起学概率论与数理统计”;
“与LSGO一起学抽象代数;
“与LSGO一起学点集拓扑”
“与LSGO一起学数字图像处理”;
“与LSGO一起学智能计算”;
如果对这些内容感兴趣,可以一起来学习讨论。
我们的官网: www.lsgogroup.com
联系客服