欢迎来到天天文库
浏览记录
ID:15712500
大小:147.50 KB
页数:7页
时间:2018-08-05
《第4讲运算符和表达式》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第4讲 运算符和表达式教学目标:(1)熟练使用各种运算符(2)熟练使用各类表达式(3)掌握各类运算符的优先级一、运算符与表达式概述1.运算符和表达式的概念C#中各种运算是用符号来表示的,用来表示运算的符号称运算符。用运算符把运算对象连接起来的有意义的式子称为表达式,每个表达式的运算结果是一个值。2.运算对象和运算符的“目”运算符必须有运算对象,根据运算对象的多少可以把运算符分成单目运算符、双目运算符和三目运算符。3.运算符的优先级和结合性计算下面的表达式:3+5*2 大家都知道先算“*”号再算“+”号,其实这里就涉及到运算符的优先
2、级问题。即当表达式中出现多个运算符,计算表达式值时,必须决定运算符的运算次序,我们把这个问题称为运算符的优先级。 有如下的表达式:Sb*(a-c)该表达式应先算括号内的“a-c”,然后再用b乘上“a-c”的运算结果。当在一个表达式中出现多个同级别的运算符时,应先算谁呢?这就涉及到运算符的结合性。二、算术运算符1.基本算术运算符+-*/%说明:1)/。如果除数和被除数都为整数,则结果为整数,把小数舍去(并非四舍五入);2)%。在C#中,所有数值类型都具有预定义的模运算。如:5%2为1,-5%2为-1,5.0%2.2为0.6,5.0m
3、%2.2m为0.62.递增(++)、递减(--)运算符其作用是使变量的值自动增加1或者减少1。自增和自减运算符既可以在操作数前面(前缀),也可以在操作数后在(后缀)。即:++i、--i、i++、i--。需要注意的是:递增和递减运算符只能用于变量,而不能用于常量或表达式,6++或(a+b)++都是不合法的。inta=3;Console.WriteLine(-a++);Console.WriteLine(-a--);Console.WriteLine(-++a);inta=3;intb=a+++a+++a++;Console.Writ
4、eLine(a);Console.WriteLine(b);inta=3;intb=(++a)+(++a)+(++a);Console.WriteLine(a);Console.WriteLine(b);三、赋值运算符赋值运算符用于将一个数据赋予一个变量,赋值操作符的左操作数必须是一个变量,赋值结果是将一个新的数值存放在变量所指示的内存空间中。其中“=”是简单的赋值运算符,它的作用是将右边的数据赋值给左边的变量,数据可以是常量,也可以是表达式。类型符号说明简单赋值运算符=x=1复合赋值运算符+=x+=1等价于x=x+1-=x-=1
5、等价于x=x-1*=x*=1等价于x=x*1/=x/=1等价于x=x/1%=x%=1等价于x=x%1&=、
6、=、^=、>>=、<<=复合赋值运算符的运算非常简单,例如x*=5就等价于x=x*5,它相当于对变量进行一次自乘操作。复合赋值运算符的结合方向为自右向左。同样,也可以把表达式的值通过复合赋值运算符赋予变量,这时复合赋值运算右边的表达式是作为一个整体参加运算的,相当于表达式有括号。例如,a%=b*2-5相当于a%=(b*2-5),它与a=a%(b*2-5)是等价的。C#语言可以对变量进行连续赋值,这时赋值操作符是右关联的,这意
7、味着从右向左运算符被分组。如x=y=z等价于x=(y=z)。四、关系运算符关系运算符用于在程序中比较两个值的大小,关系运算的结果类型是布尔型,也就说,结果不是true就是false。一个关系运算符两种的运算对象如果是数值类型的对象,则比较的是两个数的大小;如果是字符型对象,则比较的是两个字符的Unicode编码的大小,比如:字符x的Unicode编码小于y,则关系表达式‘x’<‘y’的结果为true。关系运算可以同算术运算混合,这时候,关系运算符两边的运算对象可以是算术表达式的值,C#先求表达式的值,然后将这些值做关系运算。比如:
8、3+6>5-2(结果是false)符号意义运算结果类型运算对象个数实例>大于布尔型。如果条件成立,结果为true,否则结果为false23>6,x>2,b>a<小于3.14<3,x=大于等于3.26>=b<=小于等于PI<=3.1416==等于3==2,x==2!=不等于x!=y,3!=2五、逻辑运算符逻辑运算符用于表示两个布尔值之间的逻辑关系,逻辑运算结果是布尔类型。逻辑非运算的结果是原先的运算结果的逆,即:如果原先运算结果为false,则经过逻辑非运算后,结果为true;原先为true则,结果为false。逻辑与运算含义
9、是,只有两个运算对象都为true,结果才为true;只要其中有一个是false,结果就为false。逻辑或运算含义是,只要两个运算对象中有一个是true,结果就为true,只有两个条件均为false,结果才为false。符号意义运算对象类型运算结果
此文档下载收益归作者所有