1、3.9 VB运算符与表达式,学习目标,1. 了解运算符合表达式的概念 2. 了解各种类型的运算符的具体作用 3. 认识运算符的优先级 4. 了解表达式的意义与书写规则,运算符与表达式,VB规定的进行各种运算的符号,有算术运算符、关系运算符、逻辑运算符、字符串运算符、日期运算符等。 “运算符” (Operator)是代表某种运算的符号。 用运算符把变量、常量、函数、和圆括号等按一定的规则连接起来形成“表达式”(Expression)。每一个表达式都有一个值,即计算结果,称为表达式的值。,3,1、算术运算符,功能: 对数值型数据进行操作,运算量及结果均为数值型。 :加法运算,也用于字符串的之间的合
2、并运算 :减法运算 Mod:求余运算。例:a Mod b表示a被b整除以后的余数。小数变为整数,符号与a 相同 :整除运算。例如:32值为1小数变为整数再计算,结果变为整数 *:乘法运算 /:除法运算,例如: 3/2值为1.5 :幂运算。AB表示以A为底的B次方。,算术运算符举例:,求余Mod运算举例: 23 Mod 7 8.6 Mod 3 11.4 Mod 5.2 求余运算、整除运算是小于0.5的数不能做除数!,5,结果为2,结果为0,结果为1,2、 比较运算符(关系运算符),比较运算符(也称关系运算符)功能: 对两个操作数进行大小比较,若关系成立,返回True,否则返回False。VB共提
3、供六种运算符。,6,关系运算符优先级相同,从左至右运算。 可比较数据:数值型、字符型、日期型、逻辑型和对象型。,VB中True用-1表示;False用0表示。 如果两个操作数是数值型,则按其大小比较; 如果两个操作数是字符型,则按字符的ASCII值从左到右一一比较(区分大小写)。 字符串比较,则按字符的ASCII码值从左到右一一比较,直到出现不同的字符为止。例 “ ABCDE “ “ ABRA “ 结果为 False 汉字的比较:按汉字的拼音字母比较。 例: “男字” “女字” 结果为 False 关系运算符中的等于“=” 是判断两边的值是否相等。 例:a=b=c,7,3、字符串运算符,字符串
4、运算符有两个: + 或 & 作用: 将两个字符串首尾相连为一个字符串。 字符串内的空格与其他字符同样是有效的字符。 变量与“&”间应加一个空格,因为符号“&”还是长整型的类型定义符。否则,VB先把它作为类型定义符处理,这会造成出错。 连接符“&”与“+”的区别是: “&”连接符两旁的操作数不管是字符型还是数值型,进行连接操作前,将操作数转换成字符型,然后再连接. 如果是,两边类型不一样,则自动转换后再运算,无法转换提示类型不匹配错误,能转换运算的结果可能无意义。,8,4、日期时间运算符,日期与数值的加减运算 表示在日期上加上或减去若干天。 日期与日期的减法 表示两个日期之间的天数差,不是整天则
5、用小数表示。 日期的比较 比较晚的日期比较早的日期。,9,5、逻辑运算符,又称布尔运算,操作数为逻辑型数据True 、False 。 常用的逻辑运算符有3种:Not、And、Or。 Not:非,取反值。 And:只有两个都为True时结果才为True。 Or :只有两个都为False时结果才为False。,10,逻辑运算规则,6、运算符的优先级,小括号算术运算符字符运算符关系运算符逻辑运算 在表达式中,先进行算术运算符,接着进行比较运算,然后才进行逻辑运算符。 比较运算符的优先级相同,按它们出现的顺序从左到右进行处理。 使用小括号,可以改变计算顺序,并且可读性增强 。 注意溢出错误,11,5、
6、表达式书写举例,sin(45*3.14/180)+(exp(10)+log(10)/sqr(x+y+1),12,a*b*c*d/e/f/g 或 a*b *c*d/(e*f*g),例1:,例2:,7、表达式,用VB的运算符和合法数据连接成的能进行某种运算的有意义的式子。 (1)组成:变量、常量、函数、运算符和圆括号 (2)书写规则 运算符不能相邻。例:a+-b是错误的。 乘号不能省略。例:x乘以y 应写成:x*y 括号必须成对出现,均使用小圆括号。 表达式从左到右在同一基准上书写,无高低、大小。 (3)不同数据类型的转换,13,运算结果的数据类型系统自动向精度高的数据类型靠。 IntegerLongSingleDoubleCurrency,课堂小结,