C#C#基础.NET

C#基础之005 常用运算符 1

2019-04-11  本文已影响3人  tanyufeng

运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C# 有丰富的内置运算符,分类如下:

赋值运算符号

赋值运算符可以说是程序中最重要,但同时也是最基础的运算符。

int a;
int b;
//将等号右边的10赋值给左边的变量a, 
a = 10;
b = 20;
//将等号右边的运算结果30赋值给左边的变量a,
a = 10+20;
//将等号右边的运算结果30赋值给左边的变量a,
a = 10 + b;
//先获取a的值为30
//将等号右边的运算结果40再赋值给左边的变量a,
//a最终的结果为40
a = a + 10;
//先获取a的值为40
//再获取b的值为20
//将等号右边的运算结果60再赋值给左边的变量a,
//a最终的结果为60
a = a + b;

算术运算符

算术运算符对数据进行算术运算, 运算符有:+、-、*、/、%、++、--

加法运算(+)

加法运算,将两个项进行相加;项可以是常量、变量以及运算结果, 如下演示:

int a = 10, b = 20;
int c = 10+20;      //两个常量相加
c = a + 10;         //常量与变量相加
c = a + b;          //变量与变量相加

减法运算(-)

减法运算,将两个项进行相减;项可以是常量、变量以及运算结果, 如下演示:

int a = 10, b = 20;
int c = 10-20;      //两个常量相减
c = a - 10;         //常量与变量相减
c = a - b;          //变量与变量相减

乘法运算(*)

乘法运算,将两个项进行相乘;程序中乘法的符号是星号(*), 与数学中的乘法符号✖️不一样,需要引起注意。项可以是常量、变量以及运算结果, 如下演示:

int a = 10, b = 20;
int c = 10*20;      //两个常量相乘 结果为200
c = a * 10;         //常量与变量相乘  结果为100
c = a * b;          //变量与变量相乘   结果为200

除法运算()

除法运算,将两个项进行相除;程序中除法的符号是斜杠(), 与数学中的乘法符号不一样,需要引起注意。项可以是常量、变量以及运算结果, 如下演示:

float a = 10, b = 20;
float c = 10.0/20.0;      //两个常量相除 结果为0.5
c = a / 10;         //常量与变量相除  结果为1.0
c = a / b;          //变量与变量相除   结果为1.0

c = 10/20      //变量与变量相除   结果为0.0

注意:我看到上面实例中最后一个,结果可能和我们预期的0.5不一样。这是因为对于除法, 如果两边都为整数时,结果为取整

取余运算(%)

取余数运算, 求前一个项相对于后一项的余数。需要引起注意,取余数运算的两边都必须为整数, 只有整数才有余数。实例如下:

int a = 10, b = 20;
int c = 10%20;      //两个常量相除 结果为10
c = a % 10;         //常量与变量相除  结果为0
c = a % b;          //变量与变量相除   结果为10
c = 31 % 20;       //变量与变量相除   结果为11

自增/自减(++、--)

自增/自减运算是单目运算,即只对一项进行运算,被运算的项必须是变量, 变量可以在符号的前面, 也可以在符号的后面。运算方式是对变量进行+1/-1操作,实例如下:

//自增
int a = 10;
a++;        //对a做+1操作, 结果a为11
a = 10;
++a;       //对a做+1操作, 结果a为11

//自减
int a = 10;
a--;        //对a做-1操作, 结果a为9
a = 10;
--a;       //对a做-1操作, 结果a为9

注意:当自增/自减单独存在时, 变量在前和在后效果是一样对。但是,如果自增/自减是在运算中, 则在前和在后是不一样对, 下面是对应实例:

//////////////////////////////////自增
int a = 10;
int c = 10 + (a++);
//最后c的值为20, a的值为11
//c = 10 + (a++); 等价于  c = 10 + a;  a++;

a = 10;
c = 10+(++a);
//最后c的值为21, a的值为11
//c = 10 + (a++); 等价于 a++;  c = 10 + a;  

//////////////////////////////////自减
a = 10;
c = 10 + (a--);
//最后c的值为20, a的值为9
//c = 10 + (a++); 等价于  c = 10 + a;  a--;

a = 10;
c = 10+(--a);
//最后c的值为19, a的值为9
//c = 10 + (a++); 等价于 a--;  c = 10 + a;  

注意:通过上面实例我们可以看出, 当自增/自减参与运算时,如果变量在符号前,则先让变量参与运算,然后变量在自增/自减;如果变量在符号后, 则先让变量自增/自减, 然后在让变量参与运算

复合算术运算符

复合算术运算符是特殊的算术运算, 算是算术运算的一种简化版本,复合算术运算符有:+=、-=、*=、/=、%=;
运算法则与算术运算法则相同, 实际使用如下:

int a = 10, b = 20;
a += 10;  //最后a的值为20, 等价于 a = a + 10;
a -= 10;  //最后a的值为10, 等价于 a = a - 10;
b *= 10;  //最后b的值为200, 等价于 b = b * 10;
b /= 10;  //最后b的值为20, 等价于 b = b / 10;
a %= 8;  //最后a的值为2, 等价于 a = a % 8;

欢迎大家踊跃评论,让我们一起探讨技术!!
如果觉得文章不错,请帮忙点击文章下方的喜欢!!
你的支持将是对我最好的鼓励, 谢谢!!!

上一篇下一篇

猜你喜欢

热点阅读