VisualBasic语法基础.ppt
《VisualBasic语法基础.ppt》由会员分享,可在线阅读,更多相关《VisualBasic语法基础.ppt(92页珍藏版)》请在三一办公上搜索。
1、Visual Basic语法基础,本章的学习要点基本数据类型和用户定义的数据类型常量和变量常用内部函数算术运算符、关系运算符与逻辑运算符以及表达式的运算优先级,数据是计算机处理的对象,也是运算产生的结果。为了便于处理各式各样的数据,高级语言会将数据进行类型划分,即根据数据的用途不同将其定义为不同的数据类型。定义数据的类型后,既可以确定数据占用的存储空间,又可以确定数据的处理范围。Visual Basic 6.0中将数据类型分为基本数据类型和用户自定义数据类型。,数据类型,数据类型,一、基本数据类型 基本数据类型是系统定义好的标准数据类型,可以直接使用。基本数据类型可分为6类:数值型、日期型、逻
2、辑型、字符型、对象型和变体型,其中数值型数据又包括:整型、长整型、单精度型、双精度型、货币型和字节型。,基本数据类型,数值型,基本数据类型,整数,长整数,整型,单精度型,双精度型,实型,货币型,字节型,数值型,基本数据类型,数值型整型 是不带小数点的数据,和数学中整数的含义类似,只是整型数据取值范围在-3276832767之间,存放在计算机中用2个字节(即16位)来表示。类型符为%,即在数据尾加上%就表示此数据为整型数据。长整型 和整型数据类似,都表示整数,但所能表示的数据范围比整型大,取值范围为-21474836482147483647,长整型数据在计算机中用4个字节表示。类型符为&。,例如
3、:2%表示2以整型数据存储。,例如:5&表示5为长整型数据存储。,基本数据类型,数值型单精度型 带小数点的实数,在计算机中用4个字节来存储,有效数字为7位,通常单精度型数据以指数形式表示,指数部分用E或e表示。双精度型 带小数点的实数,有效数字为15或16位,在计算机内用8个字节存储,比单精度型数据精度更高。双精度型数据也以指数形式表示,指数部分用D或d表示。,例如:3.6e+5表示数学中的3.6105,7.45E-6表示7.4510-6,例如:55.87d+5表示数学中的55.87105,7.45D-6表示7.4510-6。,基本数据类型,数值型货币型 是为了计算货币而设置的定点实数或整数,
4、它的精度要求比较高,在计算机中用8个字节存储。类型符为。字节型 是范围在0255之间的无符号的整数,在计算机中仅用一个字节表示,因此称为字节型数据。,例如:23.5表示23.5以货币型数据存储。,基本数据类型,日期型 表示在公元100年1月1日9999年12月31日之间的日期和时间数据,日期型数据用#括起来标识。逻辑型 逻辑型数据也称为布尔型数据,用来表示逻辑判断的结果。它只有真(True)和假(False)两种取值情况。,例如:#7/25/2006#表示2006年7月25日。,数值型数据,逻辑型数据,数据转换,数值型数据,逻辑型数据,0,False,非0,True,0,False,-1,Tr
5、ue,基本数据类型,字符型 用双引号括起来的一串字符,字符型数据可以有两种:定长字符串和变长字符串。定义变长字符串时,其后加上“*”和数字,表示该字符串的长度为该数字表示的字节数,例:Dim a As String*6,表示定义变量a是一个含6个字符的定长字符串数据。对象型 对象型数据主要用于定义应用程序中定义的对象的类型。,基本数据类型,变体型 变体型数据可以表示任何一种数据类型,其大小由所赋予的数据类型决定。说明:(1)不同类型的数据,所占的存储空间不一样。(2)数据的类型可在数据之后加上一个类型符来表示,例如,413&,86!,104.67#等。,例如:dim a As Variant
6、定义a为变体型数据a=123 a为整形数据a=visual basic a为字符型数据,常量和变量,在Visual Basic中,标识符是程序员为变量、常量、数据类型、过程、函数、类等定义的名字。标识符的命名规则(1)标识符必须以字母开头,可以由字母、数字或下划线组成。(2)标识符的长度不能超过255个字符,控件、窗体、类和模块的名字不能超过40个字符。(3)自定义的标识符不能和VB中的运算符、语句、函数和过程名等关键字同名,同时也不能与系统已有的方法和属性同名。(4)保证标识符在同一范围内是惟一的。,常量和变量,常量 常量也称为常数。Visual Basic中,用常量表示在整个程序中事先设置
7、的、不会改变数值的数据。常量分为:常量的数据类型可以是任何一种数据类型。,直接常量,符号常量,常量和变量,常量直接常量 直接常量是在程序中直接给出的数值、字符、日期等具体的数据值。按照数据类型分类,可以将直接常量分为以下几类:,字节型、整型和长整型常量,单精度和双精度浮点型常量,逻辑型常量,字符型常量,直接常量,日期型常量,字符型常量的引号必须是西文双引号,常量和变量,常量符号常量 符号常量是用一个标识符代表一个直接常量,用这个标识符作为常量名。用户自定义的符号常量,定义格式:,系统内部定义常量,用户自定义的符号常量,符号常量,Const 符号常量名 As 数据类型=常量表达式,Const D
8、a=#1/1/68#Const M As Integer=45,D=tea as String,常量和变量,变量 变量是在程序执行过程中,其值能够改变的量。变量名的命名遵循标识符的命名规则。在变量使用之前需要对变量所描述数据的数据类型进行声明。在变量使用之前提前声明变量称为显式声明;没提前声明而直接使用则称之为隐式声明。显式声明 Dim|Public|Private|Static 变量名1 As 类型1,变量名2 As 类型2,Dim a As IntegerDim c,常量和变量,变量隐性声明如果没有声明就直接使用,Visual Basic会自动根据数据值对其规定数据类型。后缀法声明在Vis
9、ual Basic中,对有些数据类型的变量,允许直接在变量名后面加上数据类型符(即后缀),指定该变量的数据类型。,X=35 X为Integer类型Y=Visual Basic 6.0编程 Y为String类型,xa%变量xa是整型数据 xb 变量xb是货币型数据 xc$变量xc是字符型数据,常量和变量,强制显式声明变量语句 Visual Basic虽然不要求必须对变量进行声明,但是不声明变量经常会出现很多错误,所以一般编程者希望在运行程序之前由系统编译器帮助检查程序中是否有未显式声明的变量,如果希望这样做,可以在通用声明部分用强制显式声明语句。格式:这个语句所实现的功能也可以通过Visual
10、Basic系统的选项功能来设置,打开“工具”“选项”菜单项,在“编辑器”选项卡下,选中“要求变量声明”,同样可以达到这样的功能。,Option Explicit,选择,变量在一个时刻只能存放一个值,当数据不多时,使用简单变量可解决问题,但数据庞大时用简单变量效率太低。例如:(1)输入100个数,按从大到小或者从小到大的顺序输出。(2)某学校有近万名学生,做一个学生信息表。,数组,数组,1数组的概述 数组是具有相同数据类型的数据元素的集合。它由同一个名字不同下标的同类型变量组成。数组中的变量称为数组元素,数组中的每个元素都有一个唯一的下标(索引)来标识自己。数组元素的个数称为数组的长度(大小)数
11、组的特点:1)数组的命名规则遵循标识符命名规则;2)数组中的元素是有序排列的;3)数组的元素个数是有限的;4)数组的数据类型就是该数组的下标变量的数据类型;5)数组元素的存储不是松散状态,而是占据一片连续区域。,使用数组和简单变量主要存在如下区别:(1)输入的简单变量越多,程序就越长,程序本身占用的内存空间就越大。(2)在一个程序中使用的简单变量个数有限,对大批量数据,简单变量就不能表示了。(3)简单变量的存储位置呈松散状态,数组却占据着一片连续的存储区域。(4)在程序结构上,简单变量不适合使用循环的办法来解决,增加了代码的复杂度。,数组,2数组的定义 1)数组的声明 一个数组包括数组名称、数
12、组维数、数组大小、数组类型以及作用范围。在使用数组时要将以上内容告诉计算机,以便开辟足够的内存单元来存储数据,这个过程叫做声明数组。声明数组的语法格式:Public|Private|Dim 数组名(维数定义)As 数据类型.说明:(1)数组必须“先声明,后使用”;(2)一条声明语句可以同时声明多个不同维数的数组,但数组间不能同名。,数组,2)数组的上、下界 数组有上界和下界,数组的元素在上下界内连续递增。语法格式:下界1 To 上界1,下界2 To上界2.其中:下界和上界分别表示该维的最小和最大下标值,通过关键字To连接起来确定下标的取值范围。默认下界为0,下界可以省略,若省略下界说明下标的取
13、值范围是从0到上界。例如:声明数组Sums Dim Sums(9)As Double 该数组包含10个元素,a(0)a(9),数组,3)数组的维数 下标变量中下标的个数决定数组的维数,各维下标之间用逗号“,”隔开。一个下标的下标变量构成一维数组,一维数组表示线性顺序;两个下标的下标变量构成二维数组,二维数组用于表示平面;三个下标的下标变量构成三维数组,三维数组可以表示立体空间。有多少个下标的下标变量就构成多少维的数组,通常又把二维以上的数组称为多维数组。,数组,例如:Orange(1 to 5)表示一维数组共有5个元素。Apple(1 to 3,2 to 5)表示二维数组,大小为34,元素总数
14、为二个维数的乘积12,该数组在数学上可表示为3行4列的矩阵。Pear(1 to 2,1 to 3,2 to 4)表示三维数组,大小为233,元素总数为三个维数的乘积18,该数组在数学上可以用立体图形来表示。注意:在增加数组的维数时,数组所占的存储空间会大幅度增加,由于对每一个下标变量都分配空间,所以声明数组的大小要合适。,数组,4)数组的类型“As 数据类型”表明数组元素的类型。可以声明任何基本数据类型的数组:Byte、Boolean、Long、Currency、Single、Double、Date、String(变长字符串)、String*length(定长字符串)、Object(对象型)、
15、Variant(变体型)、用户定义类型。,数组,5)下标变量的使用说明下标变量由数组名后跟小括号“()”括起来的下标组成。且下标必须放在小括号内。例如:a(3)不能写成 a3,否则被当作简单变量处理。下标可以是常量、数值变量、算术表达式。例如:a(6),b(2*m+1),c(i)。若下标中若含有变量,使用前该变量应提前赋值。例如:当i=1时:a(i)表示a(1),a(i+2)表示a(3);当i=b(1)=1时:a(b(1)表示a(1)。下标变量的类型就是数组的类型,所有下标变量都具有一样的类型。下标变量像简单变量一样,一个下标变量代表相应数组的一个组成元素。,数组的概念,静态数组与动态数组,静
16、态数组:在程序执行前,系统进行编译时,根据数组说明语句开辟的固定的存储空间,直到程序执行完毕,在整个过程中存储空间大小不再改变,这种数组就叫静态数组。动态数组:在执行过程中给数组开辟存储空间后,还可以用Redim(或Dim)语句再次分配存储空间,这种数组就叫动态数组。在程序未执行时,动态数组不占用内存;而静态数组,编译程序将为它的数据段预留空间。,静态数组,1静态数组的声明数组声明的语法格式:Public|Private|Dim 数组名(下标)As 类型 下标的格式:下界1 To 上界1,下界2 To 上界2)例如:Dim A(2)As Double 一维数组A,共有三个双精度元素,分别为A(
17、0)、A(1)、A(2)。,2数组下标设置语句 下界默认开始值为0。但在使用时,若希望从别的值开始,这就需要用“Option Base”语句设置数组下标的起始值。Option Base语句的语法格式:Option Base n 例如:Option Base 1 Dim A(5)As String 等价于Dim A(1 To 5)As String,静态数组,注意:1)在数组声明时,下标表示数组的维数大小,但在使用中,只表示数组中的一个元素。即:Dim D(3)As Double 声明过程中 D(3)表示D是一个一维数组,有4个元素,分别为D(0)、D(1)、D(2)、D(3)。声明完成后再出现
18、的D(3),则表示数组D中的一个数组元素。2)Option Base n语句必须在标准模块中或窗体通用声明处使用。,静态数组,动态数组,与静态数组对应的是动态数组,即数组元素个数不定的数组。若事先不知道数组的大小,并希望在运行时可以根据需要改变数组的大小(或大小不断改变),这时就要使用动态数组。动态数组与静态数组不同的是:动态数组灵活、经济、可伸缩,可在任何时候改变数组的大小,从而不会浪费内存。1动态数组的声明 数组声明的语法格式:Public|Private|Dim 数组名()As 类型,2创建动态数组的步骤(1)声明一个空维数表的数组(不必说明维数和界限)。例如:Dim X()As Int
19、eger。(2)在需要指定数组大小时,再使用ReDim语句分配数组中实际元素个数。例如:ReDim X(50)。,动态数组,ReDim语法格式:ReDim Preserve 数组名(下标)As 类型 其中:(1)ReDim语句中的 As 类型可以省略,若不省略则必须要和数组声明中的类型一致。(2)使用ReDim相当于数组被重新初始化,原来的数据将全部丢失。(3)Preserve表示再次使用ReDim语句改变数组大小时保留数组中原来的数据,但Preserve只能改变多维数组中最后一维的上界,否则运行程序报错。(4)ReDim 语句用来更改某个已声明维数或大小的数组。如果有一个较大的数组,并且不再
20、需要它的某些元素,ReDim 可通过减小数组大小来释放内存。另一方面,如果代码确定某个数组需要更多元素,也可使用ReDim语句来实现。,动态数组,动态数组,如果数组A已经有一些值,比如说dim 数组A()as longRedim 数组(1 to 2)数组A(1)=10数组A(2)=20而又想再添加一项Redim 数组(1 to 3)这里没有使用Preserve,所以重定义之后1,2下标里面被清零数组A(3)=30最后其实得到的是数组A(1)=0数组A(2)=0数组A(3)=30,动态数组,但是dim 数组A()as longRedim 数组A(1 to 2)数组A(1)=10数组A(2)=20
21、而又想再添加一项Redim Preserve数组A(1 to 3)这里使用Preserve,所以重定义之后1,2下标里面被保留数组A(3)=30得到的是数组A(1)=10数组A(2)=20数组A(3)=30注意,此函数只能修改下标,而不能修改上标,如果是多维的也是一样,只能改下标,统计输入的任意个数之和。Private Sub Command1_Click()Dim N As Integer,A()As Single,i As Integer,s As Single N=InputBox(输入几个数?)ReDim A(1 To N)For i=1 To N A(i)=InputBox(输入第+
22、Str(i)+个数)Print 第&i&个数=&A(i)s=s+A(i)Next i Print N&个数之和为&sEnd Sub,动态数组,数组的基本操作,数组是一个整体,但在具体操作时是针对数组元素进行的。基本操作包含:(P26)数组元素赋值 清理元素,3.数组输出 数组内容的输出使用一重循环实现。例如:Private Sub Form_Click()Dim A(1 To 10)As Integer,i As Integer For i=1 To 10 Print A(i)Next i End Sub,一维数组元素的输入与输出,运算符和表达式,运算是对数据进行加工的过程,描述不同运算的符号
23、称为运算符,参与运算的数据称为操作数。在VB中,运算符有算术运算符、字符串运算符、关系运算符、逻辑运算符。表达式用来表示某个求值规则,可以由关键字、运算符、常量、变量、函数、对象和配对的圆括号以合适的形式组合而成。每个表达式都有一个惟一的值作为表达式的值。根据运算符的不同,可以将表达式分为算术表达式、字符串表达式、关系表达式、逻辑表达式。,算术运算符及其表达式,算术运算符是专用来进行数学计算的运算符。Visual Basic提供的算术运算符共有7个,除负号为单目运算符外,其余的都为双目运算符,即需要两个操作数完成的运算。,算术运算符及其表达式,算术表达式是由算术运算符连接操作数构成的表达式,其
24、运算结果是数值。由于一个表达式中可能出现多种算术运算符,所以计算的时候要按照优先级来进行运算,优先级越高的越先计算。圆括号可以改变优先级,括号内的优先级最高。算术运算符的操作数可以是数值型、数字字符型或逻辑型。计算时数字字符型和逻辑型数据自动转换为数值型后再参与运算。,逻辑型,数字字符型,数值型,运算,注意,+、-、*、/的运算规则和数学里面的运算规则一样,计算时按照“先乘除,后加减”的规则计算。整除运算的运算规则是先计算两个整数的商,再丢弃商值的小数部分。若参加运算的除数或被除数不是整数,则按照四舍五入的方法先进行取整,然后再按照整除运算的规则计算结果。例如83的结果是2,5.83的结果是2
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualBasic 语法 基础
链接地址:https://www.31ppt.com/p-5452409.html