资源预览内容
第1页 / 共42页
第2页 / 共42页
第3页 / 共42页
第4页 / 共42页
第5页 / 共42页
第6页 / 共42页
第7页 / 共42页
第8页 / 共42页
第9页 / 共42页
第10页 / 共42页
亲,该文档总共42页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
第3章 命令按钮与函数,(时间:2次课,4学时),第3章 命令按钮与函数,教学提示:本章介绍VB常用的标准函数、表达式和命令按钮,VB常用标准函数和表达式是程序设计语言基础。各种函数,如三角函数、对数函数、日期函数等都是通过函数名调用。在学习中要注意函数的功能和调用方法。所有高级语言表达式都有一定的书写规范,学习中要注意VB表达式和日常运算式在书写上的不同之处。命令按钮是VB程序设计最常使用的控件,程序中出现最多的事件过程是命令按钮的事件过程。 教学目标:掌握常用的字符串函数、转换函数、数学函数、日期时间函数、随机函数和输入函数的用法。掌握算数运算符、关系运算符、逻辑运算符的和VB表达式的作用和书写规范。会编写命令按钮的事件过程。,第3章 命令按钮与函数,引例3.1 计算面积和周长 3.1 运算符和表达式 3.2 常用标准函数 3.3 命令按钮 (CommandButton)控件 3.4 综合运用,3.1 运算符和表达式,3.1.1 算术运算符和算术表达式 3.1.2 字符串运算符和字符串表达式 3.1.3 关系运算符和关系表达式 3.1.4 逻辑运算符和逻辑表达式 3.1.5 日期运算符和日期表达式 3.1.6 运算符的优先级,3.1.1 算术运算符和算术表达式,在VB中,算术运算符有:乘方号()、取负号(-)、乘号(*)、除号(/)、整除号()、求余运算符(Mod)、加号(+)和减号(-)。 运算 运算符 算术表达式举例 说明 乘方 23结果为8 ab表示a的b次方 取负 - - (-10) 结果为10 单目运算,-a表示对a取负 乘法 * 2*4结果为8 乘法运算,乘法和(/)除法是同级运算 除法 / 3/2结果为1.5 除法运算 整除 32结果为1 (整除)运算的结果仅保留整数 求余 Mod 3 Mod 2结果为1 结果是两数相除后的余数 加法 + 3+2结果为5 加法和减法是同级运算 减法 - 3-2结果为1,算术表达式的计算是根据算术运算符的优先级完成的,同级从左到右顺序完成计算。例如: Private Sub Command1_Click() Print 9 3 * 3 End Sub 输出结果为1。因为先计算乘法,再完成整除99的运算。 Private Sub Command1_Click() Print 9 / 3 * 3 End Sub 输出结果为9。因为同级运算,从左至右顺序完成。,3.1.2 字符串运算符和字符串表达式,在VB中,字符串运算符有:加号(+)和字符串连接运算符号(&)。两个运算符的作用相同,都是将两个字符串连接成一个字符串。例如: “可视化“ & “程序设计“ 结果仍是一个字符串:“可视化程序设计“ “可视化“ + “程序设计“ 结果仍是一个字符串:“可视化程序设计“ 加号(+),究竟完成加法运算还是字符串的连接,取决于参加运算的两个操作数,当两个操作数都是数值类型时完成加法运算。当两个操作数都是字符串类型时完成字符串的连接运算。要区分数值型和字符串类型,如: “ 123 “ + “ 456 “ 结果仍是一个字符串:“123456“,3.1.3 关系运算符和关系表达式,在VB中,关系运算符有:大于号()、小于号(=)、小于等于号(或)。 关系运算符也称比较运算符,用来对两个相同类型的数据或表达式进行值的比较,关系运算的结果是布尔型的,结果值True表示真,False表示假。 关系表达式的一般格式: 表达式 关系运算符 表达式,运算 运算符 关系表达式举例 说明 大于 32+2结果为False 先计算2+2 小于 = “A“=“a“结果为False 小写大于大写 小于等于 或 #12/19/2003# 结果为True 日期靠后的为大,3.1.4 逻辑运算符和逻辑表达式,在VB中,常用的逻辑运算符有:非(Not)、与(And)、或(Or)和异或(Xor)。 逻辑运算符,用来对两个逻辑量进行运算,运算的结果是逻辑型的,结果值True表示真,False表示假。 逻辑表达式的一般格式: 表达式 逻辑运算符 表达式,运算 运算符 逻辑表达式 非 Not Not(53) 结果为False 与 And True And True结果为True 或 Or False Or False结果为False 异或 Xor True Xor False结果为True,例如: A + B = C And X = Y 是逻辑表达式,在求解该表达式时,先完成算术运算,再解决关系运算,最后进行逻辑运算。整个表达式的含义是,当A + B等于C并且X等于Y时,该表达式的结果为真。 例如: Not L1 And Not L2 是逻辑表达式,在求解该表达式时,先解决逻辑非运算,再进行逻辑与运算。整个表达式的含义是,当L1和L2都为假时,该表达式的结果为真。,3.1.5 日期运算符和日期表达式,日期型数据只有加“+”和减“-”两个运算符。两个日期型数据相减,结果是一个整数,即两个日期相差的天数,如:#12/31/1999# - #12/29/1999#,结果为2;日期型数据加上(或减去)一个整型数据(表示天数),结果仍为日期型数据,表示向后推算的日期(向前推算的日期)如:#12/31/20003# + 2,结果为#01/02/2004#。,3.1.6 运算符的优先级,在含有各种运算符混合运算的表达式中,运算符运算优先级规定为:首先进行数值运算和字符串运算,其次进行关系运算,最后完成逻辑运算,同级运算自左到右顺序完成,括号可以改变优先顺序。在表达式中只能使用小括号,不能使用中括号或大括号,并且也同样要求括号是半角英文符号。例如:,3.2 常用标准函数,3.2.1 常用数学函数 3.2.2 常用转换函数 3.2.3 常用字符串函数 3.2.4 常用日期时间函数 3.2.5 InputBox函数,3.2.1 常用数学函数,常用数学函数主要包括三角函数、指数函数、对数函数、平方根函数、绝对值函数等,函数 说明 举例 结果 Sin(n) 计算n的正弦值 Sin(0) 0 Cos(n) 计算n的余弦值 Cos(0) 1 Tan(N) 计算N的正切值 Tan(0) 0 Abs(N) 计算N的绝对值 Abs(-2) 2 Atn(N) 计算N的反正切值 Atn(0) 0 Exp(N) 计算e的N次幂 Exp(0) 1 Log(N) 计算N的自然对数 Log(1) 0 Sgn(N) 计算N的符号值 Sgn(-2) -1 Sqr(N) 计算N的平方根 Sqr(4) 2 Rnd(N) 产生0,1)之间随机数 Rnd 0,1),运行下面程序,会发现运行程序输出的3个随机数确实随机并满足在01之间。但再次运行该程序会发现所产生的3个随机数和上次的完全相同。 Private Sub Command1_Click() Print Rnd : Print Rnd : Print Rnd End Sub,在调用随机函数之前先使用Randomize语句,此后再使用随机函数便可产生逼真的随机数。 Private Sub Command1_Click() Randomize Print Rnd : Print Rnd : Print Rnd End Sub 下面程序演示了,函数的自变量是另一个函数。 Private Sub Command1_Click() Print Sqr(Abs(-4) End Sub,3.2.2 常用转换函数,常用转换函数主要包括数值型数据与字符型数据之间的转换,以及数值型数据之间的转换。,函数 说明 举例 结果 Asc(C) 将字符转换成ASCII编码 Asc(“A“) 65 Chr(N) 将ASCII编码转换成字符 Chr(65) “A“ Fix(n) 返回n的整数部分 Fix(5.6) 5 Int(n) 返回不大于n最大整数 Int(5.6) 5 Str(N) 将数值型量转换为字符型量 Str(123) “123“ Val(C) 将字符串转换为数值型量 Val(“123“) 123,常用Val函数把输入的数字字符串转换成数值,用Str函数把要输出的数值转换成字符串。 Option Explicit Private Sub Command1_Click() Const Vg = 300000000# Const Pi = 3.1415 Dim OA, AB, OB, S1 OA = Vg / 3000 / 2 AB = OA * Sin(30 * Pi / 180) OB = OA * Cos(30 * Pi / 180) S1 = Pi * OB * OB Print “飞机的高度是:“ + Str(AB) + “m“ Print “雷达仰角为30,搜索面积是:“ + Str(S1) + “m2“ End Sub,Asc和Chr是一对互逆函数,Asc只能计算一个字符串首字符的ASCII编码,Chr是计算ASCII编码对应的字符,控制字符可以使用Chr函数输入。 Private Sub Command1_Click() Print Chr(Asc(“A“) Print Asc(“ABCDEF“) Print Trim(Str(Asc(“ABCDEF“) Print “显示在上一行“ + Chr(13) + Chr(10) + “显示在下一行“ End Sub,3.2.3 常用字符串函数,在字符存储和处理中,VB 6.0采用了Unicode编码。Unicode编码将一个汉字和一个西文字符都视为一个字符,占用两个字节存储。,函数 说明 举例 结果 Ltrim(C) 删除字符串左边的前导空格 Ltrim(“ abc“) “abc“ Rtrim(C) 删除字符串右边的尾随空格 Rtrim(“abc “) “abc“ Trim(C) 删除字符串前导和尾随的空格 Trim(“ abc “) “abc“ Left(C,N) 从字符串的左边取出N个字符 Left(“abc“,2) “ab“ Right(C,N) 从字符串的右边取出N个字符 Right(“abc“,2) “bc“ Mid(C,M,N) 从字符串的M位右取出N个字符 Mid(“abcd“,2,2) “bc“ InStr(C1,C2) 返回字符串2在字符串1的位置 InStr(“abc“,“bc“) 2 Len(C) 返回字符串的长度 Len(“abc“) 3 Space(N) 产生N个空格字符组成的字符串 Space(2) “ “ Lcase(C) 大写字母转换成小写字母 Lcase(“AbC“) “abc“ Ucase(C) 小写字母转换成大写字母 Ucase(“abc“) “ABC“,Private Sub Command1_Click() str1 = “字符串函数与运算“ str2 = Mid(str1, 4, 2) Print str2 n = InStr(str1, str2) Print n Print InStr(str1, “字符子串“) Print str1 + “的长度是“ + Str(Len(str1) Print UCase(“abCDef“) Print LCase(“abCDef“) Print LCase(“abCDef“) + Space(3) + UCase(“abCDef“) End Sub,3.2.4 常用日期时间函数,函数 说明 举例 结果 Date 系统当前的日期(年-月-日) Date
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号