第4章VisualBasic程序设计基础.ppt
《第4章VisualBasic程序设计基础.ppt》由会员分享,可在线阅读,更多相关《第4章VisualBasic程序设计基础.ppt(127页珍藏版)》请在三一文库上搜索。
1、第四章 Visual Basic 程序设计基础,本章主要内容,Visual Basic语言字符集及编码规则 数据类型 常量和变量 运算符和表达式 常用内部函数,学习重点,清楚各种常用数据类型,掌握其表示以及各类数据在内存中的存放形式,了解自定义数据类型 理解常量和变量的概念、掌握其定义和使用 掌握各类运算符、表达式和常用内部函数的功能和使用方法,4.1.1 Visual Basic语言字符集,VB语言字符集与其他高级程序设计语言的字符集类似,包含字母、数字和专用字符三大类,共计89个字符: 字母:大写英文字母AZ;小写英文字母az 数字:09 专用字符:共计27个,4.1.2 编码规则(1),
2、Visual Basic中的语句是执行具体操作的指令,每条语句以回车键结束。在一般情况下,输入程序时要求按行书写,一行上书写一条语句,一句一行。 Visual Basic允许使用复合语句行,即在同一行上书写多条语句,则各语句间必须用冒号“:”隔开;注意:一个语句行的长度最多不能超过1023个字符,且在一行的实际文本之前最多只能有256个前导空格。 Visual Basic允许一条较长的语句分多行书写,但必须在续行的行末加入续行符“ _”(一个空格和下划线),表示下一行与该行属于同一个语句行;一个逻辑行最多只能有25个后续行。,4.1.2 编码规则(2),VB代码不区分字母的大小写 VB代码中必
3、须使用西文标点 VB标识符的命名规则: 必须以字母或汉字开头,由字母、汉字、数字或下划线组成 字符必须并排书写,不能出现上下标形式 长度小于等于255个字符 不可以是系统关键字 不能包含空格、西文标点符号和类型说明符%、&、!、#、$ 在作用域范围内必须唯一 注意:虽然VB中可以使用汉字进行标识符命名,但是为了书写方便,一般不使用汉字,4.1.2 编码规则(3),使用注释增加程序的可读性。注释语句格式: 格式1:Rem 注释内容 格式2: 注释内容 说明:注释语句是非执行语句,仅仅对相应位置上的代码起到注释作用。格式1中的关键字Rem和注释内容之间必须用空格隔开;注释内容中可以包含任意字符(西
4、文、中文等);格式1是以单独注释语句形式出现;格式2在使用时较格式1更加灵活,可以以单独注释语句形式出现,也可直接出现在某行语句后面进行注释,但是续行符后面不能加注释。,4.2 数 据 类 型,数值数据类型 字符数据类型String 逻辑数据类型Boolean 日期数据类型Date 对象数据类型Object 变体数据类型Variant,注意点,注1:数据类型问题 选用什么类型满足数据的表示要求 如何用最节约、最有效率的方法表示数据原则:能用占用较少字节的类型尽量使用占用字节较少的数据类型 注2:对象属性类型 Width、Height、Top、Left属性取值为数值类型 Caption、Text
5、属性取值为字符串类型 Visible、Enabled属性取值为布尔类型,1Integer和Long,用于保存带有符号的、不带小数点和指数符号的整数,存放整数的字节最高位是符号位。整数运算速度快、精确,但表示数的范围小。 整数的表示形式为n% 或 n& Integer型整数能表示-32768+32767范围内的整数,%是Integer整型的类型说明符,可省略 Long型整数能表示-2147483648 ,2147483647范围内的整数,&是Long长整型的类型说明符。 356、+356、-356、356%合法Integer型常量 35689、-1246978、356&合法Long型常量,2Si
6、ngle、Double,用于保存浮点实数(带有小数部分的数值),浮点实数表示数的范围大,但有误差,且运算速度慢。 单精度浮点数精度为7位,双精度浮点数精度为1516位。 单精度型和双精度型常量有两种表示形式,即小数形式和指数形式。 指数形式由符号、指数和尾数3部分组成 单精度浮点数和双精度浮点数的指数分别用“E”(或“e”)和“D”(或“d”)来表示,含义为“乘以10的幂次”。,2Single、Double,单精度型表达形式:n!、nEm、n.nEm 双精度型表达形式:n.n、n#、nDm、n.nDm 其中,n、m是无符号整数 -2.15!、0.123!、0.34625E+3、2.34E8、1
7、23.4E-3表示合法的单精度数 -346.25、1234567.89、90.3#、3D10、1.2D-6、0.34625E+3#表示合法的双精度数,2Single、Double,单精度型和双精度型常量的小数形式若超出有效位数,进行小数部分的截取;若整数部分超出有效位数,自动转为指数形式表示。 当幂为正数时,正号可以省略 2.34E8等价于2.34E+8 3D10等价于3D+10 同一个实数有多种表示形式 -346.25可以表示为-3.4625D+2、-0.34625D+3、-34.625D+1、-3462.5D-1、-34625.D-2等 一般将-3.4625D+2称为“规格化指数形式” 默
8、认情况的直接实型常数都是双精度类型 -346.25与-346.25#是等价的双精度类型常数。,3Currency,货币数据类型是为表示钱款而设置的,是定点实数或整数,精确到小数点后4位和小数点前15位,用于货币运算。 表示形式在数字后加符号 -346.25、2346、0.1234都是合法的货币数据形式。,4Byte,字节实际上是一种数值类型,以1个字节的无符号二进制数存储。,说明,不同类型的数据取值的范围、所适应的运算不同,在内存中所分配的存储单元数目也不同,因此正确地区分和使用不同的数据类型,不仅可满足处理问题表示数据的要求,而且可使程序运行时占用较少的内存,确保程序运行的正确性和可靠性 V
9、isual Basic规定在数值型常数后加类型说明符可以改变数据的类型,从而改变数据在内存中的存储空间大小。 3456%、3456&、3456!(或0.3456E+4)、3456#(或3456.0、0.3456D+4、0.3456E+4#)、3456都表示与3456同值的数据,但是类型不同在计算机内存中所占用的空间不同。,4.2.2 字符数据类型String,字符串是字符序列,由西文字符、汉字和标点符号组成,在VB中字符串常量两端用双引号“ “括起 “456“ “VB程序设计“ “01/02/2008, PM-12:30:24“ 说明: (1)“是长度为0(既不含任何字符)的字符串,称为空字符
10、串(或空串)。 (2)若字符串中有双引号,可用连续的两个双引号“表示字符串中的“,示例如下: “学习“VB“课程“ 表示字符串:学习“VB“课程 (3) Visual Basic中的字符串变量有定长和变长两种,在定义时是有区别的。,4.2.3 逻辑数据类型Boolean,逻辑数据类型又称布尔类型,用于逻辑判断,只有True和False两种取值,描述“真/假”、“对/错”、“是/否”、“开/关”等两种状态信息。 Enabled、Visible、FontBold等就是取值为True或False的逻辑型属性,因此常常与条件判断语句配合,获取对象的状态信息。,4.2.4 日期数据类型Date,日期型数
11、据以8个字节的浮点数值表示,可以表示的日期范围为公元100年1月1日9999年12月31日,时间范围为0:00:0023:59:59。 日期型数据的两种表示法: 任何在字面上表示日期和时间的字符,两端用“#”括起来 #3/8/2008# #3-8-2008# #March 8 2008# #2008-3-8 20:20:20 PM# 数值表示:数值的整数部分表示距离1899年12月30日的天数,小数部分表示时间,0为午夜,0.5为中午12点,负数代表的是1899年12月31日之前的日期和时间。,4.2.5 对象数据类型Object,对象型数据用来表示图形、OLE对象或其他对象,也可以使用对象型
12、数据的属性和方法。,4.2.6 变体数据类型Variant,变体数据类型是一种可变的数据类型,可以表示任何值,包括数值、字符串、日期/时间等。变量如果不加类型说明,系统默认为变体型(Variant),可使用VarType函数检测变体型变量中保存的数值究竟是何类型。 Variant类型的变量还可以包含Empty(未赋值)、Null(未知或缺少的值,常见于数据库)和Error(出现错误时的值)3个特殊值,可以使用IsEmpty函数来测试一个Variant变量是否被赋过值,使用IsNull函数来测试一个Variant变量是否具有Null值。,4.3 常量和变量,4.3.1 数据的存储 程序运行时,使
13、用的各种类型数据都是存放在内存单元中,并且给内存单元取名,计算机就是通过内存单元名来访问其中的数据。 内存中的存储单元分为静态存储区和动态存储区。静态存储区中的存储单元一旦分配,要到应用程序结束时才释放空间;动态存储区中的单元则可以在应用程序执行中释放,数据也可以被多次更新。 VB中数据都有常量和变量形式。常量是存放在静态存储区的常量区中的数据。常量区一旦放入数据就不允许用户修改,即常量在程序执行期间,其值是不发生变化的,直到数据单元被释放。变量是存储单元的代号,对应于存放在动态存储区的单元或静态存储区的非常量区;程序执行过程中,使用变量来暂时存放程序中有用的数据,变量的内容可以允许多次更新(
14、存入新的数据)。,4.3.2 常量,根据表示形式可以将常量分为直接常量和符号常量 1直接常量(字面常量) 直接常量可从形式上判断其类型和大小 #3/8/2008#为日期型常量 230.0为Double型常量 “asdf“ 、 “230.0“为字符串常量 可以在常量值后加类型说明符(%、&、!、#、)来说明常数的数据类型 345%为Integer类型常量 在VB中的整型常量中,默认是用十进制表示的数值 八进制常数在数值前加&O,如&O567,&O777等 十六进制常数在数值前加&H,如&H189,&HFFFF等。VB中的颜色数据常用十六进制整数表示,如&H0000FF00表示绿色。,2符号常量,
15、Visual Basic中的符号常量分为用户自定义符号常量和系统符号常量。 Const语句用户自定义符号常量来代替指定的值 格式: Private | Public Const 常量名 As 类型名=表达式 Const PI As Double=3.1415926535 声明PI为双精度符号常量,值为3.1415926535 Const NATIONALDAY As Date = #10/1/1949# 声明NATIONALDAY为日期常量,值为1949年10月1日 Const a As Integer =5 , b As Double=12.5 一句语句中定义多个常量,中间用逗号隔开,Con
16、st语句格式说明, 常量名的命名遵循Visual Basic标识符的命名规则,符号常量名常常使用大写字母。 As类型名:说明该符号常量的数据类型,若缺省,则由其右侧表达式的数据类型决定常量类型。 用户也可以在常量名后加类型说明符,定义该常量的类型 Const PI#=3.1415926535 声明PI为双精度符号常量,值为3.1415926535 表达式可以由运算符、常量(直接常量和已定义的符号常量)组成,必须具有一个确定的值;注意,该表达式中绝对不允许使用变量、函数。 Const TAXMIN!=0.05 Const TAXMAX!=10 * TAXMIN,Const语句格式说明, Publ
17、ic选项只能用在标准模块的通用部分,表示该符号常量可以在整个应用程序中使用,Private选项则可用在模块(包括窗体模块和标准模块)的通用部分,表示该符号常量可以在该模块范围内使用。默认情况为Private。 符号常量一旦声明,在之后的代码中只能引用,不能再次定义或赋值。,(2)系统符号常量,VB系统本身提供了一些符号常量,存放于系统的对象库中。如vbOK、vbRed、vbYes等,用户可以在“对象浏览器”中查看 Visual Basic for Applications(VBA)、ActiveX控件、Microsoft Excel和Microsoft Project等提供对象库的应用程序也提
18、供了符号常量,这些符号常量可与应用程序的对象、方法和属性一起使用 为避免不同对象中同名变量的混淆,在引用时使用2个小写字母前缀,区分引用哪个对象库中符号常量 vb表示引用VB和VBA中的符号常量 xl表示引用Excel中的符号常量 db表示引用Data Access Object中的符号常量,(2)系统符号常量,在使用时既可以使用系统符号常量,也可以直接使用系统符号常量对应的数值。 Form1.BackColor=vbRed Form1.BackColor=255 Form1.BackColor=&HFF 以上3条语句执行时都能将窗体的背景色更新为红色,显然使用系统符号常量vbRed,程序代码
19、的可读性更强。,4.3.3 变量,在程序运行过程中,内存单元中数据值可以改变的称为变量。一个变量必须有一个名字和相应的数据类型,通过名字来引用一个变量,而数据类型则决定了该变量的存储方式和在内存中占据存储单元的大小 变量名实际上是一个符号地址,程序编译连接时,由系统给每一个变量分配一个内存地址,在该地址的存储单元中存放变量的值。在程序中从变量中取值,实际上是通过变量名找到相应的内存地址,从其存储单元中取数据。注意变量名和变量值这两个概念的区别。,4.3.3 变量,在Visual Basic中,变量有两种形式,即对象的属性变量和内存变量 创建对象时,Visual Basic系统会自动为它创建一组
20、变量即属性变量,并为每一个属性变量设置其默认值。这类变量可供程序员直接使用,如引用其值或赋予新值 本章讨论的是内存变量,它是用户根据需要所声明的。,1变量的声明(显式声明),与符号常量一样,要求变量“先声明,后使用”。声明变量就是定义变量名和变量数据类型,从而决定系统为它分配多少存储单元存放数据。 (1)在定义变量时指定其数据类型 格式:Declare 变量名 As 类型名 说明: Declare可以是Dim、Public、Private、Static Dim用于在模块的通用部分定义模块级变量以及在过程中定义过程级变量。 Private用于在模块的通用部分定义模块级变量。 Public用于在模
21、块的通用部分定义全局变量。 Static用于过程中定义过程级静态变量。,(1)在定义变量时指定其数据类型,说明: 仅在某个过程中使用的变量,就在该过程中用Dim声明定义,若要在多个过程中使用公共变量,则必须在模块的通用部分用Dim、Private、Public声明定义此变量 变量名遵循Visual Basic标识符的命名规则。命名时应尽量有意义,做到“顾名思义”。 Sum、Ave_Score、PersonId是合法的变量名 可在变量名前加一个缩写的前缀来表明该变量的数据类型 intSum、sngAveScore、strPersonId As类型名:类型名可以是基本数据类型和用户定义的类型,也可
22、以省略,省略后变量为默认数据类型(默认情况下为变体型),但变体型占用内存空间较多,执行效率低 Public a As Integer 定义一个Integer型全局变量a Dim d 定义一个变体型变量d,等价Dim d As Variant,(1)在定义变量时指定其数据类型,说明: 定义字符串类型的变量: Dim 字符串变量名 As String 变长字符串变量 Dim 字符串变量名 As String * 字符数 定长字符串变量 定长字符串变量的长度,由*号后面的字符数决定,若赋予变量的字符数少于指定的字符数,则尾部用空格补足;若超过指定的字符数,系统自动截去尾部超出部分的字符。 Dim s
23、trExpress1 As String 定义变长字符串变量strExpress1 Dim strId As String * 8 定义定长字符串变量strId存放8个字符 一条声明语句可将多个声明组合起来,在这种格式下,即使几个变量的类型一致,也必须分别用“As 类型名”声明各自的类型。 Dim YourName As String * 20, BillsPaid As Currency Dim i As Long, j As Long Private a, b, c As Integer 这里a和b为Varient型,c为Integer型,(2)用类型说明符定义变量,对于具有类型说明符的数
24、据类型,采用简单格式定义变量 Declare 变量名类型说明符 说明: Declare可以是Dim、Public、Private、Static中的任意关键字 基本类型的类型说明符(%、&、!、#、)在表4-2类型说明符列中列举出 变量名与类型说明符之间没有空格 Dim i&, J#, K! 定义长整型变量i,双精度变量J,单精度变量K,2变量的默认声明(隐式声明),Visual Basic系统允许用户不作声明而直接使用变量,这样的变量是过程级的变体型变量,只能在过程中使用。 以下事件过程中的变量a未经声明定义 Private Sub Form_Click() a=Val(Text1.Text)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VisualBasic 程序设计 基础
链接地址:https://www.31doc.com/p-2550105.html