《VisualBasic语法结构.ppt》由会员分享,可在线阅读,更多相关《VisualBasic语法结构.ppt(17页珍藏版)》请在三一办公上搜索。
1、第三章,数据类型,常量与变量(1),常量的说明,注意不同类型的常量用不同的符号分隔,如“”#,符号常量的意义,如PI。变量,要注意命名规则。变量一般需要定义才能使用,分强制定义和隐式定义的区别。P53变量的初始值,在程序中声明了变量以后,Visual Basic自动将数值类型的变量赋初值0,变长字符串被初始化为零长度的字符串(),定长字符串则用空格填充,而逻辑型的变量初始化为False。,常量与变量(2),Static语句局部变量除了用Dim语句声明外,还可以使用Static语句来声明,用这种方法来声明的变量在程序运行过程中可以保留原来的值,即变量所占用的内存空间没有释放。当以后再次使用该变量
2、时,可以继续使用,直到程序结束才释放变量所占用的内存空间。注意:静态变量只能在过程中声明,而不能在通用对象声明部分声明。命令Option Explicit(强制变量声明),算术运算符与算术表达式,指数运算 取负-乘、除 整除 求余 Mod 加、减。,字符串运算符与字符串表达式,字符串运算符有两个:“+”和“&”,均为双目运算符,用于连接两边的字符串表达式。字符串连接符“&”具有自动将非字符串类型的数据转换成字符串后再进行连接的功能,而“+”则不能。,关系运算符与关系表达式,关系运算符也称为比较运算符,包括、=、=、六种,均为双目运算符,用于比较两边的表达式是否满足条件,运算结果为True或Fa
3、lse。在关系表达式求值时:数值数据比较大小,如3#03/05/2001#为False;字符类型数据比较字符的ASCII码:若两端首字符相同则比较第2个字符,.,直到比较出相应字符的ASCII值大小或两端所有字符比较结束。如 ABCd=ABCD 为True;两个字符串的“=”关系比较结果为True,必定它们是两个完全相同的字符串。,逻辑运算符与逻辑表达式,逻辑运算符的优先级是:先Not,次And,后Or。,算术运算符、关系运算符和逻辑运算符的优先级关系为:算术运算符最高,其次是关系运算符,最后是逻辑运算符。,判断变量a、b中必有且仅有1个为0的逻辑表达式为:a=0 and b0 or a0 a
4、nd b=0判断整型变量k是正的奇数的逻辑表达式为:k0 and k mod 2=1,示例:,关于几个问题的说明,Inputbox和Msgbox的使用说明拆解分秒的问题除和整除的区别,除法向整型靠拢时,四舍六入,五留双,常用内部函数,1数学函数 三角函数:Sin(x)、Cos(x)、Atn(x)、Tan(x),分别返回正弦值、余弦值、反正切值和正切值。自变量必须是弧度,如数学式Sin30,写作Sin(30*3.1416/180)。Abs(x):返回x的绝对值。Exp(x):返回e的指定次幂,即ex。Log(x):返回x的自然对数。Sgn(x):符号函数,Sgn(x)的值当x0时为1、x=0时为
5、0,x0时为-1。Sqr(x):返回x的平方根,如Sqr(16)的值为4、Sqr(1.44)的值为1.2。Int(x):返回不大于x的最大整数。如Int(7.8)值为7,Int(-7.8)值为-8。Fix(x):返回x的整数部分。如Fix(7.8)值为7,Fix(-7.8)值为-7。,2字符串函数 Ltrim(x):返回删除字符串x前导空格符后的字符串。如Ltrim(abc)的计算结果为字符串abc。Rtrim(x):返回删除字符串x尾随空格符后的字符串。如Rtrim(abc)的计算结果为字符串abc。Trim(x):返回删除字符串x前导和尾随空格符后的字符串。如Trim(“abc”)的计算结
6、果为字符串“abc”。Left(x,n):返回字符串x左起前n个字符所组成的字符串。Right(x,n):返回字符串x右起后n个字符所组成的字符串。Mid(x,m,n):返回字符串x从第m个字符起的n个字符所组成的字符串。若s$=“abcdefg”,则Left(s$,2)返回“ab”,Right(s$,2)返回“fg”,Mid(s$,9,3)返回空字符串,Mid(s$,2,3)返回“bcd”。,Len(x):返回字符串x的长度。如果x非字符串,则返回x所占存储空间的字节数。如Len(“abcdefg”)返回数值7,Len(k%)返回数值2。Lcase(x)和Ucase(x):分别返回以小写字母
7、、大写字母组成的字符串。Space(n):返回由n个空格字符组成的字符串。(6)String(n,c):返回n个由字符c组成的字符串。(7)Instr(x,y):字符串查找函数,发拿回字符串Y在字符串x中首次出现的位置。,3日期和时间函数(无参)Date:返回系统当前日期 Time():返回系统当前时间(3)Now:返回系统当前日期、时间(4)Hour(Now):返回当前日期的小时(5)Minute(Now),Minute(Time):返回当前时间的分值(6)Second(Now)、Second(Time):返回当前时间的秒值(6)year():返回日期类型的年份(7)Month():返回日期
8、类型的月份(8)Day():返回日期类型的日,4转换函数 Str(x):返回把数值型数据x转换为字符型后的字符串。Val(x):把一个数字字符串x转换为相应的数值。如果字符串中包含非数字字符,则将第一个数字形式的字符串转换为相应的数值。Chr(x):返回以ASCII值为x的字符。如Chr(65)返回A。Asc(x):返回字符串x首字符所对应的ASCII值。如Asc(ABcde)返回数值65。,5随机数语句和函数 Randomize语句:该语句的作用是初始化VB的随机函数发生器(为其赋初值)。Rnd函数:产生01之间的随机数一般地,要得到a,b之间的随机整数,可用公式“Int(Rnd*(b-a+
9、1)+a”。,测试函数,(1)IIf:result=IIf(条件,True部分,False部分)例如:m=IIf(ab,a,b)如果ab则m=a;否则m=b。因此,m的值等于a与b中较大的值。,(2)IsDate/IsNull/IsNumeric/IsObject:判断表达式的值是否是指定类型(日期型/无效型/数值型/对象型)。例如:检测变量。Dim MyVar,MyCheckMyVar=53指定值MyCheck=IsNumeric(MyVar)返回TrueMyVar=Help指定值MyCheck=IsNumeric(MyVar)返回False,(3)IsArray:判断指定变量分量是否为数组。,数学表达式需要注意的几个地方:1,所有符号和数字不可省略 2,不能写成上下结构的分子分母形式,要排在一行上 3,函数使用得当三角函数用弧度表示等等 4,只有小括号 5,注意运算的优先级,函数使用题例:1,随机生成所有的三位正整数。2,取2位小数,其后四舍五入。3,如何判断回文。,