第三讲VB语言基础选编课件.ppt
,Visual Basic 程序设计,第四章 VB语言基础,4.1 程序代码的组织方式4.2 代码的书写规则4.3 VB的数据类型4.4 运算符与表达式4.5 VB的公共函数 总结与练习,1.语句 语句是组成VB程序的最基本成分。(1)语句的一般形式:语句体,4.2 代码的书写规则,规定语句的功能;有些语句没有该部分,提供具体说明或具体操作,例如:Dim a as Integer a20,一条语句作用:向系统提供必要的信息或规定系统执行某些操作。,(2)书写注意1)代码不区分字母的大小写,如:Ab 与AB等效;2)系统对用户程序代码进行自动转换;对于关键字,首字母被转换成大写,其余转换成小写 对于用户定义的变量、过程名,以首次定义为准进行转换,2.语句书写规则(1)续行:(空格下划线字符“_”)(2)同一行上书写多条语句,语句间用冒号“:”分隔(3)一行允许多达1023个字符(4)注释行以 Rem开头,注释整行;以注释符“”引导 注释内容从注释符开始直到该行结束利用“编辑”工具栏的“设置注释块”、“解除注释块”来 设置/取消多行注释。,例如:Form1.Print 学好VB _&要多学多练 Form1.Hide:Form2.Show Form1.Hide 将Form1隐藏 Print&HF,&O17,4.2 代码的书写规则,4.3 VB的数据类型,变量/常量命名规则,变量,常量,常量,数据类型,Integer;Long;Single;Double;Currency;Byte,1.数值数据类型,4.3.1 数据类型,Integer:整型(占2字节)表数范围:-215-1 215-1,即32768 32767 表示形式:n 或n%,Long:长整型(占4字节)表数范围:-231-1 231-1 表示形式:n&,例如:-120,120&,120,120%,43210,-12345678&,Byte:字节型(占1字节)表数范围:0255(无符号),Integer;Long;Single;Double;Currency;Byte,3.3.1 数据类型,Single:单精度(4字节)-7个有效位 表示形式:带小数点数 用指数(E)表示 数字后面加“!”,Double:双精度(8字节)-15个有效位 表示形式:用指数(D)表示 数字后面加“#”,例:-1E2,1.2E2 120.0,120!+12345678.,例:-1D2,1.2D2 120#,Currency:货币型(8字节)-19个有效位 表示形式:数字后面加“”,例:120,1.数值数据类型,=(-1)102,Integer;Long;Single;Double;Currency;Byte,1.数值数据类型,4.3.1 数据类型,2.Boolean型:,3.String型:,表示形式:用双引号括起来或变量名后加“$”如:“Basic”、“1234”,注意:与 的区别 字符串123abc的表示:123abc,Integer;Long;Single;Double;Currency;Byte,1.数值数据类型,4.3.1 数据类型,4.Date型:-占用8个字节 表示形式:用#号括起来 如:#2-14-04 6:10:00#或以数字表示 如:2.5,表示日期以1899年12月30日为基点,表示时间,2.Boolean型:,3.String型:,表示形式:用双引号括起来或变量名后加“$”,5.Variant型:万能型 是一种通用的、可变的数据类型,隐含变量的类型,6.Object型:用于保存任何对象的引用,举例:re,my data,re.er,8re,工资,Integer intSum,引例:解方程 3x2+25x+11=0 设:a=3,b=25,c=11,则上述方程变为ax2+bx+c=0,规则:变量或常量名必须以字母或汉字开头;由字母、汉字、数字、下划线组成;长度比超过255个字符;在VB中变量名的字母不区分大小写;不要与关键字同名(Dim,string等)为了提高程序的可读性,在变量名前可加约定的前缀 Int、lng、sng、dbl、bln、cur、dt、str、vnt、byt,4.3.2 变量/常量的命名规则,例2:Dim A As String Dim B As String*5 A=“Visual Basic”B=“Visual Basic”Print A,B,声明变量的目的:根据声明的类型决定系统为它分配的存储单元。,1.显式声明变量:,例1:Dim A Dim B As Long Dim C As Single Dim D As Integer,Public|Private|Dim|Static 变量名 AS 数据类型,4.3.3 变量,变量:在程序的运行过程中其值可以变化的量,等同于:Dim A,B As Long,C As Single,D As Integer 或:Dim A,B&,C!,D%,数值型字符型布尔型对象型万能型,变长字符变量:约20亿个字符定长字符变量:约65400个字符,Private Sub Form_Click()Dim a As Integer,b As Long Dim c As Single,d As Double a=32769 b=327699999 Print a,b c=100/3 d=200/3 Print c,dEnd Sub,Private Sub Form_Click()Dim a As Boolean,b As Boolean Dim e,f As Date a=True 注意与a=“True”的区别 b=False Print a,b e=#3/1/99 9:12:02#f=1.5 Print e,fEnd Sub,注意:(1)在VB中一个汉字与一个西文字符视为一样,算一个字(2)在窗体和类模块中,不能用Public定义定长字符串变量,例:Private sub command1_click()Dim i as integer Static j as integer i=i+1 j=j+1 Print i,jend sub,连续3次单击command1,分析输出结果,生命变量的目的:根据声明的类型决定分配的存储单元。,1.显式声明变量,Public|Private|Dim|Static 变量名 AS 数据类型,4.3.3 变量,变量:在程序的运行过程中其值可以变化的量,2.变量作用域,Dim与Static的区别:,是指使用的变量未用声明语句进行声明而直接使用 未声明直接使用的变量均默认为Variant型 也可在变量名后加一个规定数据类型的说明符加以说明,(1)作用:强制显式声明变量。即使用任何一个变量必须“先声明,后使用”(2)增加Option Explicit语句的方法:在代码编辑器的通用/声明部分输入:Option Explicit“工具|选项”-“编辑器”-选“要求变量声明”项,3.隐式声明变量:,例:Dim Str1 As String Str1=计算机程序设计 Str2=计算机程序设计 Str3%123 Print Str1,Str2,Str3,4.3.3 变量,例:Dim T001 As String T001=计算机程序设计 Print T00l观察该程序段的输出结果结果:无输出结果,4.Option Explicit语句,2.声明符号常数:格式:Public|PrivateConst 常量名 As 类型=表达式,常数和运算符组成,1.直接常量:常数值。其数值直接反映了类型,注意:在程序中,常量比变量运行速度快 常量只能出现在赋值号的右边,常量:在程序运行期间值不能改变的量,3.系统提供常量:应用程序和控件提供的系统定义的常量 例:vbRed代表“红色”等,例如:+120,120,1.2E2,程序设计,4.3.4 常 量,在一行中可放置多个常数说明,可用逗号分隔,例:Private Const Pi As Single=3.14159,str$=VB,4.4 运算符和表达式,运算符,表达式,常量,1.算术运算符,包括:(乘方)、-(负号)、/*、(整除)MOD、+-表达式:(-5)2+5 Mod 3,2.字符串运算符,包括:+、&表达式:“123”+“3”,A B A+B A&B“123”“3”“1233”“1233”“123”3 126“1233”123 3 126“1233”“123a”3 出错“123a3”,3.比较运算符,包括:,=,=,Like,Is,表达式:15+23 4*8,4.4.1 运算符,注意:若操作数为字符型,按ASCII码比较 汉字字符西文字符,运算结果是逻辑值=False,1.算术运算符,包括:+-、MOD、(整除)、/*、-(负号)、(乘方),表达式:(-5)2+5 Mod 3,2.字符串运算符,包括:+、&,表达式:“123”+“3”,3.比较运算符,包括:,=,=,Like,Is,4.逻辑运算符,包括:And、Or、Not、Xor,.,表达式:15+234*8,表达式:,AND:逻辑与,两边的值均为真时,结果为真;否则为假OR:逻辑或,两边的值至少有一个真,结果为真;否则为假NOT:逻辑反.只有一个参数XOR:逻辑异或,两边的值不同时,结果为真;否则为假否则为真,A B Not A A And B A Or B A Xor B T T F T T F T F F F T T F T T F T T F F T F F F,4.4.1 运算符,写出逻辑表达式:选拔优秀生的条件:三门功课英语(C1)、数学(C2)、计算机(C3),总分至少265分,或C2、C3分别大于90分且C1不低于80分。,C1+C2+C3=265 OR(C180 and C290 and C390),优先级的比较 1.几大类比较,优先级:高-低,2.算术运算符,3.比较运算符,4.逻辑运算符,算术、连接、比较、逻辑,,-,(*/),MOD,(+-),同一级,Not、And、Or、Xor、,4.4.1 运算符,1.表达式组成,包含:变量、常量、运算符、函数和小括号 表达式结果:与数据和运算符有关,2.书写规则,乘号不能省略 括号必须成对出现 一个表达式在同一行上书写,没有高低、大小区分,3.同一表达式中的数据的类型转换,操作数的数据类型应该符合要求,不同的数据应该转换成同一类型。在算术运算中,如果操作数的数据精度不同,VB规定运算结果采用精度较高的数据类型。,4.4.2 表达式,4.5 常用内部函数,1.数学函数,绝对值:Abs(N)e为底的指数:Exp(N)自然对数:Log(N)产生随机数:Rnd(N)符号函数:Sgn(N)平方根:Sqr(N)三角函数Sin(N)、Cos(N)、Tan(N):其中的N必须是弧度值,|-3|-Abs(-3)e2-Exp(2)Ln(10)-Log(10)Rnd 产生一个01之间的小数 求2.4的符号-Sgn(2.4)(返回1)求16的平方根-Sqr(16)Sin(30o)-Sin(3.14/6),4.5 常用内部函数,2.字符串函数,求字串长度:Len(C)LenB(C)取子串:Left(C,N)Right(C,N)Mid(C,n1,n2)查找子串:InStr(N1,C1,C2)去掉首或尾空格:LTrim(C)、RTrim(C)、Trim(C)生成字串:spring(n,”字符”)生成空格串:space(n),Left(“计算机基础”,2)Right(“计算机基础”,2)Mid(“计算机基础”,2,4),Len(“VB程序设计”)LenB(“VB程序设计”),Str=”AB CDE”LTrim(str)、RTrim(str)、Trim(str),InStr(4,”abdbcdef”,”d”),Spring(6,”A”),Space(10),字符转换成ASCII码:Asc(C)ASCII码转换成字符:Chr(N)转换成小写字母:Lcase(C)转换成大写字母:Ucase(C)转换成字符:Str(N)转换成数字:Val(C)取整:直接取整、四舍五入取整、取N的最大整数 Fix(N)Cint(N)Int(N),Fix(3.5)Cint(3.5)Int(3.5),4.5 常用内部函数,3.转换函数,Asc(“B”)-66 Chr(97)-“a”LCase(Abc)-”abc”UCase(Abc)-ABC”Str(234)-”234”Val(”234”)-234,-,3 4 3,-3-4-4,4.5 常用内部函数,4.日期函数,获取系统当前日期:Date 获取系统当前时间:Time 获取系统当前日期和时间:Now 获取指定日期年、月、日的值:Year(D)、Month(D)、Day(D)获取指定日期是一个星期的第几天:Weekday(D,n),如:Print date,Print Time$,Print Now,Print Year(Now),Month(Now),Day(Now),Print Weekday(Now,2),日期时间格式符:字符串格式符:和,数值格式符:0:显示一数字,若此位置没有数字则补0#:显示一数字,若此位置没有数字则不显示,-+$():原样打出,4.5 常用内部函数,5.格式输出函数,Format(表达式,格式字符串),如:Print Format(12.345,+000.00)Print Format(12000.345,“#,#.#),如:Format(Now,”yyyy-mmmm-dddd”),如:Format(“ABcd”,”)、Format(“ABcd”,”),注意:Format函数仅用于控制数据的外部输出格式,不会改变数据在计算机内部的存储形式,总 结,变量的命名规则,变量的声明,Public|Private|Dim|Static 变量名 AS 类型,数据类型及其表示符,数值(整、长整、单精、双精、货币、字节)逻辑、日期、字符、万能、对象,显示声明与隐式声明,常量的声明 运算符的种类与优先级 表达式的书写 常用函数,Public|Private Const 常量名 AS 类型表达式,算术运算符 字符运算符 关系运算符逻辑运算符,1.下列语句运行时系统给出错误提示的是。.Print-32000-769.Print“IE2”+8.Print“AB”&128.Print3=2=42.下面所列四组数据中,全部是正确的VB常数是。A.32765,1.34D2,ABCDE,&O1767B.3276,123.56,1.2E-2,#True#C.&HABCE,02-03-2002,False,D-3D.ABCDE,#02-02-2002#,E-23.运行下面程序,单击命令按钮Command1,则立即窗口上显示的结果是。Private Sub Command1_Click()Dim A As Integer,B As Boolean,C As Integer,D As Integer A=20/3:B=True:C=B:D=A+C Debug.Print A,D,A=A+C End Sub A.7 6 False B.6.6 5.6 False C.7 6 A=6 D.7 8 A=8,.Print“IE2”+8,A.32765,1.34D2,ABCDE,&O1767,A.7 6 False,练 习,4.确表示命题“A是一个带小数的正数,且 B是一个带小数的负数”的逻辑表达式是。,Csng(A)0 And Csng(B)O And AInt(A)And BInt(B),练 习,5.下列表达式中,值为True的是。A.Ucase(“abcd)=abcd B.14/23Left(ABCD,2)D.Not(Spr(4)-3=-2)6.下面表达式的值为真的是。A.Mid(Visual Basic,1,12)=Right(Programming Language Visual Basic,12)B.ABCRGabcde C.Int(134.69)=Cint(134.69)D.78.9/32.77-4.98,7.有变量定义语句Dim a,b As Integer,变量 a 的类型和初值是_。A.Integer,0 B.Variant,空值 C.String,D.Long,0.0,练 习,人有了知识,就会具备各种分析能力,明辨是非的能力。所以我们要勤恳读书,广泛阅读,古人说“书中自有黄金屋。”通过阅读科技书籍,我们能丰富知识,培养逻辑思维能力;通过阅读文学作品,我们能提高文学鉴赏水平,培养文学情趣;通过阅读报刊,我们能增长见识,扩大自己的知识面。有许多书籍还能培养我们的道德情操,给我们巨大的精神力量,鼓舞我们前进。,