§3.4 运算符和表达式
【教学目标】
学会正确地书写VB的表达式,能够熟练地使用VB中的函数。
【教学要求】
了解:表达式、函数的概念。
理解:运算符、表达式、函数的分类。
掌握:运算符的使用;表达式的书写方法;常用内部函数的作用及使用方法。
【本节重点】
正确识别并使用运算符。
掌握表达式的书写规则。
常用内部函数的使用方法。
一、运算符
VB中的运算符可分为:算术运算符、字符串运算符、关系运算符和逻辑运算符四类。
1、算术运算符
∧(乘方) ―(负号) *(乘) /(除) \(整除) Mod(同余)
+(加) ―(减)
2、字符串运算符
+(合并运算) &(合并运算)
说明:+ 运算符两边数据的类型必须为字符型,否则出错。& 运算符两边的数据允许不是字符型,VB会在操作前自动将两边的数据先转换成字符型,然后进行合并运算。
3、关系运算符
<(小于) <=(小于等于) <>(不等) =(等于) >=(大于等于)
>(大于) Like(字符串匹配) Is(对象引用比较,用于两个变量引用比较)
说明:
(1)关系运算的结果为True或False,分别用“―1”、“0”表示。
(2)若两个操作数是数值型,按大小比较;若为字符型,按ASCII码(拼音)值进行比较。
(3)Like用于字符串之间的匹配比较,如:"ABCDEF" like "*CD*" 的值为true。
4、逻辑运算符
Not(非) And(与) Or(或) Xor(异或) Eqv(等价) Imp(蕴含)
逻辑运算符对数值进行运算,以数字的二进制值逐位进行逻辑运算。如:
10 and 7 的运算是:1010 and 0111
结果为:0010,即十进制的2。
二、表达式
1、表达式的组成
表达式是由常量、变量、运算符、对象及圆括号按一定规则组成的式子。
2、表达式的书写规则
(1)常量、变量和函数是表达式的特例。
(2)“*”号不能省略,也不能用其它符号代替。
(3)按运算的优先顺序运算,同级由左向右,括号优先。
(4)在同一基准行用小写字母书写。
3、不同数据类型的转换
datediff是字符型函数在算术运算中,若操作数具有不同的精度,则运算结果用精度高的数据类型。但Long和Single 运算后的数据类型为Double。
4、运算的优先级
VB表达式中的运算优先级依次为:算术运算、关系运算、逻辑运算。
在算术运算和逻辑运算中对每一个具体运算还存在优先级。具体如下:
(1)算术运算
1乘方最优先, 优先级为:1
2负号 优先级为:2
3乘法和除法 优先级为:3
4整除 优先级为:4
5取模 优先级为:5
6加法和减法 优先级为:6
(2)逻辑运算
1Not 最优先, 优先级为:1
2And 优先级为:2
3Or 和Xor 优先级为:3
4 Eqv 优先级为:4
5 Imp 优先级为:5
注意:在VB表达式中()运算优先于一切。
三、常用的内部函数
VB中的内部函数,在编程中有不可替代的作用,必须认真学习和掌握。VB的内部函数很多,我们仅介绍常用的内部函数。在下面的函数自变量中,N表示算术表达式,C表示字符表达式,D表示日期表达式,每个函数后面标注的是其含义。
1、数学函数
(1)Abs(N) │N│
(2)Cos(N) cos x
(3)Exp(N) ex
(4)Log(N) ln x
(5)Rnd(N)
Rnd(N)函数生成(0,1)区间的均匀分布的随机数(伪随机)。若要生成真随机数,使用Randomize 语句,其语法格式为:
Randomize[number]
其中,number将Rnd函数的随机数生成器初始化。若省略之,则用系统计时器返回的值做为number值。
(6)Sin(N) sin x
(7)Sgn(N) 符号函数
(8)Sqr(N) N的平方根
2、转换函数
(1)Asc(C) 求C中第一个字符的ASCII值
(2)Chr$(N) 求ASCII值为N的字符
(3)Fix(N) 取整
(4)Int(N) 取不大于N的最大整数
(5)Lcase$(C) 大写字母转换成小写字母
(6)Ucase(C) 小写字母转换成大写字母
(7)Str$(N) 将数值转换成字符串
(8)Val(C) 将字符串转换成数值
(9)Cdate(D) 将日期转换成字符
3、字符串函数
(1)InStr([N1,]C1,C2)
InStr([N1,]C1,C2)的功能是在C1中从N1位置起开始C2,并返回C2在C1中第一次出现的位置值,若没到C2则返回数值0。若省略N1,则在C1中从头C2。
(2)Left$(C,N) 取出C左边的N个字符
Right$(C,N) 取出C右边的N个字符
Mid$(C,N,K) 取出C第N个字符开始的K个字符
(3)Len(C) 求C的长度
(4)Trim(C) 去掉C前后的空格
Ltrim(C) 去掉C左面的空格
Rtrim(C) 去掉C右面的空格
(5)Space$(N) 产生N个空格
注意:在内部函数中,函数名中的 $ 符号可以省略。如Space$ 可以写为 Space。
4、日期函数
(1)Date 生成系统日期
(2)Day(D) 求日期(结果为N型)
(3)Month(D) 求月份(结果为N型)
(4)Year(D) 求年份(结果为N型)
(5)Now 生成系统日期和时间
(6)Time 生成系统时间
(7)DateAdd() 增减日期函数
DateAdd()函数的语法形式为:DateAdd("要增减的日期形式",增减量,要增减的日期变量)
例:DateAdd("ww",2,#2004-03-03#)
表示在指定的2003年3月3日的日期上加2周,结果为:#2004-03-17#
(8)DateDiff() 计算日期相差函数
DateDiff()函数的语法形式为:DateDiff("要间隔的日期形式",日期1,日期2)
例:DateDiff("dd",#2004-03-03#,#2004-03-17#)
函数用2004年3月17日减2004年3月3日,结果为14。
DateDiff 函数中"要间隔的日期形式" 的符号与含义对照表如下:
日期形式 | Yyyy | q | m | y | d | w | ww | h | n | s |
含义 | 年 | 季 | 月 | 一年的天数 | 日 | 一周的日数 | 星期 | 时 | 分 | 秒 |
5、格式输出函数
格式化输出函数Format可以使数值、日期、字符串按指定的格式输出,此函数主要用于文档输出中,其形式如下:
Format(表达式[,格式字符串])
说明:表达式是要格式化的数值、日期和字符串表达式,格式字符串要加引号" "。
(1)数值格式化
① 格式符“0”用于表示数字,若实际数值位数小于格式位数,则补“0”;
② 格式符“#”用于表示数字,若实际数值位数小于格式位数,则不补“0”,此时按四舍五入计算;
③ 在数值前可强行加“+”号、“-”号、“$”号,在数值中间可强行加小数点“.”、千分位“,”;
④ 数值若按百分比输出,可在格式中加“%”;
⑤ 数值也可按指数格式输出。
例:对数值12345.657分别用以下格式输出:
数值表达式 格式化字符串 输出结果
12345.657 " ###,###,##0.00" 12,345.66
12345.657 " 000000.0000" 012345.6570
12345.657 " >#.####" 12345.657
12345.657 " $00000.00" $12345.66
12345.657 " >#.##%" 1234565.7%
说明:
① Format能自动对数值型数据根据格式进行四舍五入。
② 函数值的类型为字符型。
注意:在经济类应用程序的报表输出中,常用的格式化字符串为:"###,###,##0.00"。此种格式化字符串的使用,可以使得输出的报表格式统一,并在报表的函数所定义列中按小数点对齐,小数位不足,可自动补0。
(2)日期和时间格式化
① 缺省格式为yy-mm-dd(年年-月月-日日)
② 若使用中文日期,在yyyy、mm、dd后分别加“年”、“月”、“日”
例:将当前日期与时间赋值给变量rq,并按以下格式打印输出:
rq = Now
Print Format(rq)
Print Format(rq, "yy-mm-dd ")
Print Format(rq, "yyyy-mm-dd hh:mm:ss")
Print Format(rq, "yyyy年mm月dd日 hh:mm:ss")
执行了以上输出语句后,在窗体上的输出的结果如下:
2004-2-28 15:20:26
04-02-28
2004-02-28 15:20:26
2004年02月28日 15:20:26
(3)字符串格式化
① 格式符 “>” 表示将字符强行大写,“<” 表示将字符强行小写;
② 格式符“@”表示实际字符位数小于格式位数,前后补空格;
③ 格式符“&”表示实际字符位数小于格式位数,前后不补空格;
例:给t变量中赋值字符串“abcd”,然后在窗体上用以下格式打印输出:
t = "abcd"
Print Format(st, ">")
t = UCase(st)
Print Format(st, "<")
Print Format(st, "@@@@@@@@")
Print Format(st, "&&&&&&&&")
执行了以上输出语句后,在窗体上打印输出的结果如下:
ABCD
Abcd
ABCD
ABCD
6、Shell函数
在VB中利用Shell函数可调用外部可执行程序,其格式如下:
Shell(命令字符串[,窗口类型])
说明:
(1)命令字符串:用于指示要执行可执行程序的路径及文件名。
(2)窗口类型:表示执行应用程序窗口的大小,一般取“1”。
例如,如下语句执行的结果是显示计算器界面:
I=Shell(" C:\")
注意:Shell函数是一个很重要的函数,它可以使我们在所开发的应用程序中嵌入其他的应用软件,完成各种复杂的综合应用。
7、DoEvents函数
DoEvents是一个较为特殊的函数,它既可以作为函数,又可以作为VB的语句,其格式如下:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
hive datediff函数
« 上一篇
oracle函数
下一篇 »
发表评论