第四章运算符与表达式_第1页
第四章运算符与表达式_第2页
第四章运算符与表达式_第3页
第四章运算符与表达式_第4页
第四章运算符与表达式_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、2第四章第四章 运算符与表达式运算符与表达式4.1 运算符运算符4.2 表达式表达式34.1 运算符运算符本节知识点:本节知识点: 运算符运算符 算术算术运算符运算符 比较比较运算符运算符 字符串字符串运算符运算符 日期时间日期时间运算符运算符 逻辑逻辑运算符运算符44.1 运算符运算符v运算运算是是对数据进行加工和处理的过程对数据进行加工和处理的过程。v运算符运算符:一些基本运算可用简洁的符号表示,:一些基本运算可用简洁的符号表示,这种这种表示某种运算的符号表示某种运算的符号就是运算符。就是运算符。v运算量运算量:被运算的对象。:被运算的对象。(常数常数、变量变量等等)v表达式表达式:描述:

2、描述对什么数据对什么数据,按什么顺序按什么顺序进行进行什么运算什么运算的式子,由运算符和运算量组成。的式子,由运算符和运算量组成。v表达式的值表达式的值:表达式的计算结果称为表达式:表达式的计算结果称为表达式的值,的值,表达式的值也有相应的数据类型表达式的值也有相应的数据类型。54.1 运算符运算符1、算术运算符、算术运算符v用来对用来对数值型数据进行算术运算数值型数据进行算术运算,运算结果运算结果是是数值型数值型。运算符运算符说明说明优先级优先级示例示例举例举例运算结果运算结果指数指数1xy238* , /乘,除乘,除2x*y , x/y2*36整除整除3xy522Mod求余求余4x mod

3、 y5 Mod 21+ , -加,减加,减5x+y , x-y2+3564.1 运算符运算符v整除运算符整除运算符“”执行整除运算,执行整除运算,结果为整型结果为整型数数。整除的运算量为整型数,当运算量带有。整除的运算量为整型数,当运算量带有小数时,小数时,首先四舍五入为整数首先四舍五入为整数,然后进行整,然后进行整除运算,除运算,运算结果截去小数部分运算结果截去小数部分,不再四舍,不再四舍五入。五入。( 10.1 3.9 结果结果 2 )vMod用来求余数用来求余数。求余运算结果的正负号同。求余运算结果的正负号同第一个操作数的符号。第一个操作数的符号。( 15 mod -6 结果结果 3 )

4、v绝对值小于绝对值小于0.5的数的数不能作整除运算和求余运不能作整除运算和求余运算的除数,否则会出现除数为算的除数,否则会出现除数为“0”的错误。的错误。74.1 运算符运算符2、比较运算符、比较运算符v用来对用来对两个数值两个数值或或字符串字符串进行比较,结果为进行比较,结果为逻辑值逻辑值True或或False。运算符运算符说明说明示例示例结果结果小于小于2.5大于大于2.55False=等于等于2=4False=小于等于小于等于2.5=大于等于大于等于5=6False不等不等18True84.1 运算符运算符v比较运算符比较运算符“=”与与赋值号赋值号“=”的区别的区别:前者:前者只比较两

5、边的值是否相等,不会改变任何一只比较两边的值是否相等,不会改变任何一个值,所以比较运算符两边可以是:个值,所以比较运算符两边可以是:常量常量、变量变量、函数函数或或表达式表达式。v赋值语句是独立的语句,而由比较运算符构赋值语句是独立的语句,而由比较运算符构成的表达式成的表达式只能是语句的一部分只能是语句的一部分。v例子例子:求表达式:求表达式 a=b=c的值。的值。94.1 运算符运算符3、字符串运算符、字符串运算符v字符串连接运算符字符串连接运算符:将两个字符串连接成一:将两个字符串连接成一个字符串,有个字符串,有“+”和和“&”。由于。由于“+”还兼有还兼有算术运算符的功能,所以使

6、用时要注意。算术运算符的功能,所以使用时要注意。 例子例子:“30” & “15” “3015”“30” + “15” “3015” 30 & 15 “3015”“30” + 15 45104.1 运算符运算符v字符串比较运算符字符串比较运算符:使用比较运算符。两字:使用比较运算符。两字符串进行比较时,两字符串符串进行比较时,两字符串向左对齐向左对齐,然后然后逐个进行比较逐个进行比较。 字符的大小取决于字符的字符的大小取决于字符的机内码机内码。 英文字母、数字等按其英文字母、数字等按其ASCII码值码值区分大小。区分大小。 汉字:中文符号按汉字汉字:中文符号按汉字国标码国标码顺

7、序进行比较。顺序进行比较。 所有汉字和中文符号大于所有英文字母、数所有汉字和中文符号大于所有英文字母、数字等字等ASCII码。码。114.1 运算符运算符v语言文字的数字化语言文字的数字化: 首先确定需要数字化的首先确定需要数字化的字符集合字符集合。 为字符集合中的每个字符分配一个唯一为字符集合中的每个字符分配一个唯一的的二进制编码二进制编码。 为该字符集合设计为该字符集合设计输入法输入法。 字符集合中的每个字符制作字库。字符集合中的每个字符制作字库。124.1 运算符运算符 例子例子:“A”“B” 结果为结果为“false”“ab”“ac” 结果为结果为“false” “ab”“abc” 结

8、果为结果为“false”“ab”“AB” 结果为结果为“true”“123”“99” 结果为结果为“false”“123”=“123”结果为结果为“true”“你们你们”“我们我们” 结果为结果为“true”134.1 运算符运算符v字符串匹配运算符字符串匹配运算符:字符串的匹配字符串的匹配是指一个是指一个字符串是否符合一个字符串是否符合一个“模板模板”规定的样式规定的样式。运算符为运算符为“like”。S1 Like S2 通配符通配符:?代表任何一个字符代表任何一个字符*代表任意多个任何字符,(包含代表任意多个任何字符,(包含0个)个)#代表任意一个数字,(代表任意一个数字,(0-9)14

9、4.1 运算符运算符 例子例子: “abc” like “abc” 结果为结果为“true” “ab” like “ac” 结果为结果为“False” “ac” like “a?” 结果为结果为“true” “aAFHDa” like “a*a” 结果为结果为“true” “a2b” like “a # b” 结果为结果为“true”154.1 运算符运算符 例子例子:“F” like “A-Z” 结果为结果为“true”“aM5b” Like “aL-P#!c-e” 结果为结果为“true”“a” like “!abc” 结果为结果为“False”“abc” like “abc” 结果为结果

10、为“False”“你你” like “你我他你我他” 结果为结果为“true”164.1 运算符运算符4、日期时间运算符、日期时间运算符v日期型数据是一种日期型数据是一种特殊的数值型数据特殊的数值型数据,它们,它们之间之间只能进行只能进行“+”、“-”运算运算。v两个日期型数据相减两个日期型数据相减,结果是一个数值型数,结果是一个数值型数据据(两个日期相差的天数两个日期相差的天数)。例如:例如:#10/15/2009# - #8/15/2009# 结果结果为为61天。天。174.1 运算符运算符v日期型数据可以日期型数据可以加上加上(或或减去减去)一个一个表示天数的表示天数的数值型数据数值型数

11、据,结果仍然为一日期型数据。,结果仍然为一日期型数据。例如例如:#8/15/2009# + 30 结果结果2009年年9月月14日日#8/15/2009# - 30 结果结果2009年年7月月16日日v日期型数据的日期型数据的比较比较:比较晚的日期比较晚的日期比较早的日期。比较早的日期。184.1 运算符运算符5、逻辑运算符、逻辑运算符v对对逻辑量逻辑量进行运算,结果为进行运算,结果为逻辑值逻辑值。运算符运算符含义含义优先级优先级说明说明示例示例结果结果Not取反取反1假变真假变真, 真变假真变假Not trueFalseAnd与与2全真为真全真为真T and TTrueOr或或3一真即为真一

12、真即为真F or FFalseXor异或异或3不同为真不同为真F xor TTrueEqv同或同或4相同为真相同为真F eqv FTrueImp蕴涵蕴涵5真不含假真不含假T imp Ffalse194.1 运算符运算符v例子例子:a、b、c 是三个变量,已知是三个变量,已知 ac,判,判断断b的值是否在的值是否在a与与c之间。之间。表达式表达式正确正确写法:写法:ab and bc 错误错误写法:写法:ab 比较运算符比较运算符 逻辑运算符逻辑运算符v所有比较运算符的优先级都相同所有比较运算符的优先级都相同,要按它们,要按它们出现的顺序从左到右进行计算。出现的顺序从左到右进行计算。v字符连接运

13、算符字符连接运算符“&”的优先级位于的优先级位于算术算术和和比比较运算符较运算符之间。之间。算术运算符算术运算符 & 比较运算符比较运算符 逻辑运算符逻辑运算符324.2 表达式表达式v运算符的优先级运算符的优先级:334.2 表达式表达式3、使用括号改变计算顺序、使用括号改变计算顺序v可以用可以用圆括号圆括号“( ) ”改变表达式中运算的优改变表达式中运算的优先顺序先顺序,强制表达式中的,强制表达式中的某些部分优先进行某些部分优先进行运算运算。在括号内,运算符的优先顺序不变。在括号内,运算符的优先顺序不变。圆括号可以多层使用,但要注意配对出现。圆括号可以多层使用,但要注意配对

14、出现。v例子例子:8 + 4 * 9 6 / 2(8 + 4) * 9 6 / 2(8 + 4 * 9) 6) / 2344.2 表达式表达式4、正确书写表达式、正确书写表达式vVB中的表达式中的表达式虽然与虽然与代数中的算式代数中的算式很相似,很相似,但二者却是但二者却是完全不同的概念完全不同的概念。例如:。例如:a = b 与与 b = a vVB的表达式有的表达式有严格的规则限制严格的规则限制,初学者要,初学者要避避免代数知识的影响免代数知识的影响。354.2 表达式表达式v书写表达式要注意书写表达式要注意: 表达式中的表达式中的每个字符没有高低每个字符没有高低、大小的区别大小的区别。

15、只能使用圆括号只能使用圆括号,可以多重使用,必须成对,可以多重使用,必须成对出现。出现。 VB表达式中的表达式中的乘号乘号“*”不能省略不能省略。 能用内部函数的地方能用内部函数的地方尽量使用内部函数尽量使用内部函数。364.2 表达式表达式v将代数式转换为表达式将代数式转换为表达式: 例子:将数学式例子:将数学式 写成写成VB表表达式达式结果:结果:(-b+ sqr(b2-4*a*c) / (2*a) aacbb242374.2 表达式表达式v浮点数的精度问题浮点数的精度问题:无论是单精度还是双精:无论是单精度还是双精度浮点数都有有效数字位数的限制,度浮点数都有有效数字位数的限制,无法准无法

16、准确表示超过该精度的值确表示超过该精度的值。在编程时,应考虑。在编程时,应考虑这一点。这一点。v运算的顺序问题运算的顺序问题: 在构造表达式时,应避免在计算过程中出现在构造表达式时,应避免在计算过程中出现特大或特小的值特大或特小的值,可能,可能造成溢出造成溢出或或精度损失精度损失。 应避免应避免特别大的值与特别小的值特别大的值与特别小的值直接相加减直接相加减,可能可能造成误差造成误差。384.2 表达式表达式v运算过程中的溢出错误运算过程中的溢出错误: 当为数值型变量赋一个超出其表示范围的值当为数值型变量赋一个超出其表示范围的值时会出现时会出现“溢出错误溢出错误”。同样,。同样,在表达式的在表

17、达式的运算过程中运算过程中,当运算的中间结果超出变量的当运算的中间结果超出变量的表示范围时表示范围时,也会导致,也会导致“溢出错误溢出错误”。 例子例子:int1=20000: int2=20000sng1=int1+int2 溢出错误。溢出错误。dim int1 as integer, int2 as integer, sng1 as single394.2 表达式表达式5、表达式求值、表达式求值v表达式的值是表达式中表达式的值是表达式中所有运算执行后的最所有运算执行后的最终结果终结果v例子例子:已知:已知a=3,b=4,c=5,求表达式值。,求表达式值。 (a+b)+c-1 and b+c

18、/2 求解:求解: 7+5-1 and 4+2.5 11 and 6.5 11 and 6 00001011 and 00000110 00010001404.2 表达式表达式v例子例子:41上机作业三上机作业三题目题目1:已知三角形三边:已知三角形三边a,b,c的长,求三角的长,求三角形的面积,输出面积。形的面积,输出面积。分析分析:应用程序的界面应该能让用户输入三边:应用程序的界面应该能让用户输入三边的长,程序在接受用户输入的数据后,利用数的长,程序在接受用户输入的数据后,利用数学公式对数据进行计算,并把结果输出到屏幕学公式对数据进行计算,并把结果输出到屏幕上。已知三角形三边上。已知三角形三边a,b,c的长,求三角形的长,求三角形的面积的公式为:的面积的公式为:其

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论