第3章VB程序设计代码基础_第1页
第3章VB程序设计代码基础_第2页
第3章VB程序设计代码基础_第3页
第3章VB程序设计代码基础_第4页
第3章VB程序设计代码基础_第5页
已阅读5页,还剩37页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第三章第三章 VBVB程序设计代码基础程序设计代码基础1第第3 3章章Visual BasicVisual Basic程序设计程序设计代码基础代码基础本章要点本章要点: :字符集字符集 数据类型数据类型常量、变量常量、变量常用内部函数常用内部函数运算符与表达式运算符与表达式第三章第三章 VBVB程序设计代码基础程序设计代码基础23.1 字符集字符集1. 字符集字符集 使用使用Unicode字符集,其基本字符集包括字符集,其基本字符集包括: 数字数字: 09 英文字母英文字母: az,AZ 特殊字符特殊字符: 空格空格 ! # $ % & ( ) * + - / , . : ; ? _

2、| 等。等。2. 关键字关键字 关键字又称为保留字关键字又称为保留字 VB自动将关键字的首字母转换为大写字母自动将关键字的首字母转换为大写字母 例如例如: PRINTPRINT 5+6 5+6 转换成转换成 PrintPrint 5+6 5+6 第三章第三章 VBVB程序设计代码基础程序设计代码基础33.2 数据类型数据类型基本数据类型:基本数据类型:数值型数值型字符串型字符串型布尔型布尔型日期型日期型用户自定义的数据类型用户自定义的数据类型基本数据类型基本数据类型分为分为第三章第三章 VBVB程序设计代码基础程序设计代码基础43.2.1 数值型数据数值型数据nInteger(整型整型)nLo

3、ng(长整型长整型)nSingle(单精度浮点型单精度浮点型)nDouble(双精度浮点型双精度浮点型)nCurrency(货币型货币型)nByte(字节型字节型)第三章第三章 VBVB程序设计代码基础程序设计代码基础51. 整数类型整数类型 (1) 整型整型(Integer) 以以2个字节存储个字节存储 十进制表示十进制表示: 由由+ -号,号,09 组成组成 范围范围: -3276832767 八进制表示八进制表示: 以以&O开头,由开头,由 07组成组成 范围范围: &O0 &O177777 十六进制表示十六进制表示: 以以&H开头,由开头,由 09,AF

4、组成组成 范围范围: &H0 &HFFFF 例例: -325 0 56 +100 &O456 &O36 &H1AC &H38 &H2第三章第三章 VBVB程序设计代码基础程序设计代码基础6 (2) 长整型长整型(Long) 以以4个字节存储个字节存储 十进制表示十进制表示: 由由+ -号,号,09 组成组成 范围范围: -2147483648+2147483647 八进制表示八进制表示: 以以&O开头,以开头,以&结束结束 范围范围: &O0& &O37777777777& 十六进制表示十六

5、进制表示: 以以&H开头,以开头,以&结束结束 范围范围: &H0& &HFFFFFFFF& 例例: 453466 -34568 +1000000 &O456& &O36& &H1AC& &H38& &H2&第三章第三章 VBVB程序设计代码基础程序设计代码基础72. 实数类型实数类型 浮点数采用浮点数采用IEEE格式格式, 由尾数及指数组成由尾数及指数组成: . . . E|D (1) 单精度浮点型单精度浮点型(Single) 以以4个字节存储,可以精确到个字节存储

6、,可以精确到7位十进制数位十进制数例例: 3.234E+2 表示表示3.234 102 -28E9 表示表示-28 109 4.56E-17 表示表示4.56 10-17(2) 双精度浮点型双精度浮点型(Double) 以以8个字节存储,可以精确到个字节存储,可以精确到16位位 3.234D+2 表示表示3.234 102 -28D9 表示表示-28 109 4.56D-17 表示表示4.56 10-17尾数部分尾数部分指数部分指数部分e|d第三章第三章 VBVB程序设计代码基础程序设计代码基础8(3) 货币型货币型(Currency) 以以8个字节存储个字节存储 用于表示定点数,其小数点左边

7、有用于表示定点数,其小数点左边有15位数字,位数字,右边有右边有4位数字。位数字。3. 字节型字节型(Byte) 用于存储二进制数据,其取值范围为用于存储二进制数据,其取值范围为0255。第三章第三章 VBVB程序设计代码基础程序设计代码基础93.2.2 字符串型数据字符串型数据(String) 由由括起来的一串符号括起来的一串符号例例: abc ABC 计算机计算机 12.34 3+2 (空串空串) 如果字符串本身包括双引号,可用连续两个双如果字符串本身包括双引号,可用连续两个双引号表示。引号表示。例例: 要打印以下字符串:要打印以下字符串: You must study hard, he

8、said. 在程序中需要将该字符串表示成在程序中需要将该字符串表示成: You must study hard , he said. 3.2.3 布尔型数据布尔型数据(Boolean) 用于进行逻辑判断,只有用于进行逻辑判断,只有True和和False两个值两个值第三章第三章 VBVB程序设计代码基础程序设计代码基础103.2.4 日期型数据日期型数据(Date) 用于表示日期和时间用于表示日期和时间 格式格式: # VB接受许多种日期时间格式接受许多种日期时间格式 例例: 下面的下面的 Date/Time 值全部有效。值全部有效。 #3-6-93 13:20# #March 27,1993

9、1:20am# #Apr-2-93# #14 April 1993# #12/18/1999#3.2.5 对象型数据对象型数据(Object) 以以4个字节存储,用于引用程序中的对象。个字节存储,用于引用程序中的对象。3.2.6 可变类型数据可变类型数据(Variant) 可以包含任何类型的数据。可以包含任何类型的数据。 可以包含可以包含 Empty、Error、及及 Null等特殊值等特殊值第三章第三章 VBVB程序设计代码基础程序设计代码基础11*3.2.7 枚举类型(自学)枚举类型(自学) 3.2.8 用户自定义类型用户自定义类型 是用户自己定义的类型,这种类型可以包含多是用户自己定义的

10、类型,这种类型可以包含多个基本类型。个基本类型。 例如,可以定义一个例如,可以定义一个Students数据类型,该类型数据类型,该类型中的每一个数又包含了学生的中的每一个数又包含了学生的班级班级、学号、姓名学号、姓名、成绩成绩信息。定义格式为:信息。定义格式为: Private Type Students Class As String 班级班级 No As String 学号学号 Name As String 姓名姓名 Score As Integer 成绩成绩 End Type第三章第三章 VBVB程序设计代码基础程序设计代码基础123.3 常量常量 指在程序运行期间其值指在程序运行期间其

11、值不发生变化不发生变化的量。的量。 两种形式两种形式: 直接常量;符号常量直接常量;符号常量 3.3.1 直接常量直接常量 例例: 欢迎使用欢迎使用Visual Basic 字符串常量字符串常量 12345 数值型常量数值型常量 True 布尔型常量布尔型常量 #11/10/2001# 日期型常量日期型常量3.3.2 用户自定义符号常量用户自定义符号常量 格式格式: Const As = 类型类型: Integer Long Single Double String String*n Boolean Date Currency Byte Variant第三章第三章 VBVB程序设计代码基础程序

12、设计代码基础13例例: Const Pi = 3.14159 Const Max As Integer = 9 Const BirthDate = #1/1/01# Const MyString = friend 用逗号分隔多个常量声明用逗号分隔多个常量声明 Const Pi = 3.14, Max = 9, MyStr=Hello 用先前定义过的常量定义新常量用先前定义过的常量定义新常量 Const Pi2 = Pi * 2使用使用: 在程序中引用在程序中引用 如如: AREA=Pi*R2 在程序中不可修改在程序中不可修改 如如: Pi=3.14第三章第三章 VBVB程序设计代码基础程序设计

13、代码基础14 VB内部已定义,可以直接使用的常量内部已定义,可以直接使用的常量 查看内部常量查看内部常量: 视图视图对象浏览器对象浏览器 选择库、类、选择库、类、 成员成员 如如: 库库 VBRUN 类类 ColorConstants ShapeConstants 成员成员 Vbred vbShapeCircle 例例: Private Sub Form_Activate() Const A As String = 各种常量的使用各种常量的使用 Form1.BackColor = vbGreen Form1.ForeColor = vbRed Form1.FontSize = 14 Print

14、 A End Sub3.3.3 系统定义符号常量系统定义符号常量第三章第三章 VBVB程序设计代码基础程序设计代码基础153.4 3.4 变量变量 程序执行期间,用变量临时存储数值。程序执行期间,用变量临时存储数值。 变量的值可以发生变化。变量的值可以发生变化。 每个变量都有名称和数据类型。每个变量都有名称和数据类型。2. 变量的命名规则变量的命名规则第一个字符必须是字母第一个字符必须是字母 长度不超过长度不超过255个字符个字符 不可以包含小数点或者不可以包含小数点或者内嵌的类型声明字符内嵌的类型声明字符 不能使用关键字不能使用关键字 不能与过程名或符号常量同名不能与过程名或符号常量同名例例

15、: intMax strName Student1 MyName 不区分大小写不区分大小写;变量名应便于识别、记忆;变量名应便于识别、记忆5A1. 什么是变量?什么是变量? 一个有名称的内存单元称为变量。一个有名称的内存单元称为变量。第三章第三章 VBVB程序设计代码基础程序设计代码基础163. 变量的声明变量的声明(1) 声明变量声明变量格式格式:Dim|Private|Public| Static As As Dim: 在窗体模块、在窗体模块、标准模块标准模块或或过程过程中声明变量。中声明变量。Private: 在窗体模块或标准模块中声明变量,使在窗体模块或标准模块中声明变量,使变量仅在该

16、模块中有效。变量仅在该模块中有效。Public: 在标准模块中声明全局变量,使变量在在标准模块中声明全局变量,使变量在整个应用程序中有效。整个应用程序中有效。Static: 在过程中定义静态变量,即使该过程结在过程中定义静态变量,即使该过程结束,也仍然保留变量的值。束,也仍然保留变量的值。第三章第三章 VBVB程序设计代码基础程序设计代码基础17例例: Dim Sum As Long Dim Address As String Dim No As String * 8 Private b As Integer Dim Num, Total As Integer Num为可变类型为可变类型 Pu

17、blic Average As Single Static A As Long(2) 隐式声明隐式声明 可变类型。易出错、浪费空间可变类型。易出错、浪费空间(3) 强制显式声明强制显式声明 在模块的声明段中使用语句在模块的声明段中使用语句: Option Explicit 如果设置如果设置: 工具工具选项选项编辑器编辑器 要求变量声明要求变量声明 则在后续模块中自动插入则在后续模块中自动插入Option Explicit第三章第三章 VBVB程序设计代码基础程序设计代码基础18例例: 窗体模块和过程中使用窗体模块和过程中使用 Dim语句的区别。语句的区别。 设在窗体中放置按钮设在窗体中放置按钮

18、Command1和和Command2 Dim a As Integer Private Sub Command1_Click() a = a + 10 Print a End Sub Private Sub Command2_Click() a = a + 15 Print a End Sub 观察程序运行结果观察程序运行结果将将Dim a As Integer放到过程内,观察运行结果。放到过程内,观察运行结果。第三章第三章 VBVB程序设计代码基础程序设计代码基础19例例: Staic的作用。的作用。 设在窗体中放置按钮设在窗体中放置按钮C1Private Sub C1_Click() St

19、atic a As Integer a = a + 10 Print aEnd SubPrivate Sub C1_Click() Dim a As Integer a = a + 10 Print aEnd Sub运行时,多次单击命令按钮运行时,多次单击命令按钮C1,比较以上两个事件过程的执行效果比较以上两个事件过程的执行效果第三章第三章 VBVB程序设计代码基础程序设计代码基础203.5 常用内部函数常用内部函数 函数形式函数形式: 函数名函数名( 参数:参数:常量、变量或表达式。常量、变量或表达式。 若有多个参数,参数之间若有多个参数,参数之间以逗号分隔以逗号分隔。 函数值:也叫函数值:

20、也叫“返回值返回值” 函数的使用:函数的使用: 函数在表达式中被调用。函数在表达式中被调用。函数分类函数分类内部函数内部函数用户自定义函数用户自定义函数第三章第三章 VBVB程序设计代码基础程序设计代码基础21例例: Fix(45.67) 结果为结果为45 Int(45.67) 结果为结果为45 Fix(-2.89) 结果为结果为-2 Int(-2.89) 结果为结果为-3 Abs(-4) 结果为结果为4 Log(10) 结果为结果为2.30258509299405 Sgn(3) 结果为结果为1 Sgn(-6) 结果为结果为-1 Sgn(0) 结果为结果为0例例: 求求sin300 Sin(a

21、 * 3.14 / 180) 3.5.1 数学函数数学函数第三章第三章 VBVB程序设计代码基础程序设计代码基础22例例: 判断一个整数判断一个整数Y能否被另一个整数能否被另一个整数X整除整除 如果如果 INT(Y/X)=Y/X 则整除则整除例例: 常用对数常用对数log10X的求法的求法 用换底公式用换底公式log10X =Ln(X)/Ln(10) 即即 LOG(X)/LOG(10)例例: 求求e3 正确正确: EXP(3) 错误错误: e3(错错)第三章第三章 VBVB程序设计代码基础程序设计代码基础23例例: LTrim(ABC) 结果为结果为ABC表示空格表示空格RTrim(ABC)

22、结果为结果为ABCTrim(ABC) 结果为结果为ABCLeft(ABCDE,2) 结果为结果为ABRight(ABCDE,2) 结果为结果为DEMid(ABCDE,2,3) 结果为结果为BCDMid(ABCDE,2,6) 结果为结果为BCDELen(ABCDE) 结果为结果为5String(3,ABC) 结果为结果为AAAString(3,65) 结果为结果为AAAInStr(ABCDECDE,DE) 结果为结果为4InStr(5,ABCDECDE,DE) 结果为结果为7UCase(Abc) 结果为结果为ABCLCase(ABc) 结果为结果为abc3.5.2 字符串函数字符串函数第三章第三

23、章 VBVB程序设计代码基础程序设计代码基础241. 随机函数随机函数 Rnd(x) 产生产生0,1)之间的单精度随机数。之间的单精度随机数。 x0: 以上一个随机数作种子,产生序列中的下以上一个随机数作种子,产生序列中的下一个随机数。一个随机数。 x=0: 产生与最近生成的随机数相同的数。产生与最近生成的随机数相同的数。 省略省略x: 同同x02. Randomize语句语句 初始化随机数发生器,格式:初始化随机数发生器,格式: Randomizen n:种子,省略时以系统时间作为种子种子,省略时以系统时间作为种子3.5.3 随机函数随机函数第三章第三章 VBVB程序设计代码基础程序设计代码

24、基础25 生成生成a,b 范围内的随机范围内的随机整数整数 Int( b-a+1) *Rnd +a)例:生成例:生成1,99之间的随机整数的表达式为:之间的随机整数的表达式为: Int(99*Rnd+1)例:生成例:生成(1,99)之间的随机整数的表达式为:之间的随机整数的表达式为: Int(97*Rnd+2)第三章第三章 VBVB程序设计代码基础程序设计代码基础26例例: Asc(A) 结果为结果为65 Asc(ABC) 结果为结果为65 Chr(65) 结果为结果为A Str(123) 结果为结果为123 Str(-123) 结果为结果为-123 Val(123) 结果为结果为123 Va

25、l(123AB) 结果为结果为123 Val(.123AB) 结果为结果为.123 Val(a123AB) 结果为结果为0 Val(12E2ABC) 结果为结果为12003.5.5 日期和时间函数日期和时间函数 自学自学: P503.5.4 转换函数转换函数第三章第三章 VBVB程序设计代码基础程序设计代码基础27例例: Format(123.45, 0000.000) 结果为结果为0123.450 Format(123.45, 0.0) 结果为结果为123.5 Format(123.45, #.#) 结果为结果为123.45 Format(123.45, #.#) 结果为结果为123.5 F

26、ormat(0.123, .#) 结果为结果为.12 Format(0.123, 0.#) 结果为结果为0.12 Format(HELLO, ) 结果为结果为THIS IS IT 注注: 经经Format函数格式化后的结果为字符串类型函数格式化后的结果为字符串类型例例: Format(123) + Format(456) 结果为结果为123456区别区别: Str(123) + Str(456) 结果为结果为1234563.5.6 格式输出函数格式输出函数第三章第三章 VBVB程序设计代码基础程序设计代码基础28 Shell函数用于调用函数用于调用Windows下的应用程序。下的应用程序。格式

27、:格式:Shell(pathname,windowstyle)pathname: 要执行的可执行文件名,包含路径要执行的可执行文件名,包含路径。windowstyle: 决定程序运行时窗口的样式。如果决定程序运行时窗口的样式。如果省略,则程序以具有焦点的最小化省略,则程序以具有焦点的最小化窗口执行。取值见窗口执行。取值见P51表表3-1。3.5.7 Shell函数函数 例:运行时单击窗体,打开计算器:例:运行时单击窗体,打开计算器: Private Sub Form_Click() Shell c:winntsystem32calc.exe, vbNormalFocus End Sub这里这里

28、Shell函数以语句形式出现,没有返回值。函数以语句形式出现,没有返回值。第三章第三章 VBVB程序设计代码基础程序设计代码基础293.6 运算符与表达式运算符与表达式 操作数操作数: 常量、变量、函数、对象常量、变量、函数、对象 运算符运算符: 圆括号圆括号 算术运算符(算术表达式)算术运算符(算术表达式) 字符串运算符(字符串表达式)字符串运算符(字符串表达式) 关系运算符(关系表达式)关系运算符(关系表达式) 布尔运算符(布尔表达式)布尔运算符(布尔表达式)第三章第三章 VBVB程序设计代码基础程序设计代码基础303.6.1 算术运算符与算术表达式算术运算符与算术表达式优先级优先级运算符

29、运算符运算运算示例示例1乘方乘方322-取负取负-93 *乘法乘法3*53/浮点除法浮点除法10/34 整数除法整数除法10/35Mod取模取模10 mod 36+加法加法2+36 -减法减法2-3书书 写写: 一条线、无一条线、无 、无、无 第三章第三章 VBVB程序设计代码基础程序设计代码基础31例例: 将以下表达式写成将以下表达式写成VB合法的表达式合法的表达式na1yxxy (xy)za1+a2a-b+a(-b) a1+a2 a(-b)+a*(-b) (xy)z a(1/n) y/(-x)+x/(-y)38(4 A/(4+(8/(3+B)第三章第三章 VBVB程序设计代码基础程序设计代

30、码基础321. 乘方运算乘方运算 例例: 102 10的平方,结果为的平方,结果为100 10(-2) 10的平方的倒数,结果为的平方的倒数,结果为0.01 223 运算顺序从左到右,结果为运算顺序从左到右,结果为64 (-8)(-1/3) 错误错误,当底数为负时当底数为负时,指数应为整数指数应为整数2. 整数除法整数除法 例例: 104 结果为结果为2 25.686.99 先四舍五入再整除,结果为先四舍五入再整除,结果为33. 取模运算取模运算 例例: 10 Mod 4 结果为结果为2 25.68 Mod 6.99 先四舍五入再求余数先四舍五入再求余数,结果为结果为5 11 Mod 4 结果

31、为结果为3 -11 Mod 5 结果为结果为-1 -11 Mod -3 结果为结果为-2结果符号同第结果符号同第一个操作数一个操作数第三章第三章 VBVB程序设计代码基础程序设计代码基础33 字符串运算符有两个字符串运算符有两个: & + 例例: Hello & World 结果为结果为Hello World Check & 123 结果为结果为Check123 123 & 456 结果为结果为123456 123 & 456 结果为结果为123456&:自动将两侧的操作数作为字符处理:自动将两侧的操作数作为字符处理 123 + 456 结果为结

32、果为579 123 + 456 结果为结果为579 123 + 456 结果为结果为123456 Check + 123 错误错误:仅当两侧操作数都为字符串时才做字符串连接:仅当两侧操作数都为字符串时才做字符串连接3.6.2 字符串运算符与字符串表达式字符串运算符与字符串表达式第三章第三章 VBVB程序设计代码基础程序设计代码基础341. 比较运算符比较运算符 (小于)(小于) (大于)(大于) =(大于或等于)(大于或等于) =(等于)(等于) (不等于)(不等于)2. 表达式表达式: 23. 如何比较如何比较n 数值比较数值比较: 按数值大小按数值大小n 单字符比较单字符比较: 缺省情况下

33、按字符的内部二进制表示缺省情况下按字符的内部二进制表示比较,典型的二进制排序顺序如下:比较,典型的二进制排序顺序如下: 019 AB Z abzn 字符串比较:从左开始逐个比较字符串比较:从左开始逐个比较3.6.3 关系运算符与关系表达式关系运算符与关系表达式第三章第三章 VBVB程序设计代码基础程序设计代码基础354. 比较结果比较结果: True False例例: 45 35 结果为结果为 False 45 = 45 结果为结果为True 4 3 结果为结果为True abc cdf 结果为结果为False for fortran 结果为结果为True 例例: 要判断两个单精度型变量要判断

34、两个单精度型变量A和和B的值是否相等,的值是否相等,可以用下式判断可以用下式判断: Abs(A-B) 例如例如: 要判断要判断1除以除以3是否等于是否等于0.3333,可以写成:,可以写成: Abs(1/3-0.3333)10E-5第三章第三章 VBVB程序设计代码基础程序设计代码基础361. 布尔布尔运算符运算符: Not And Or2. 布尔表达式布尔表达式: 23. 优先级优先级: NotAndOr例例: A = 10: B = 8: C = 6。 Not (A B) 结果为结果为 False Not (B A) 结果为结果为True A B And B C 结果为结果为True B

35、A And B C 结果为结果为False A B Or B C 结果为结果为True B A Or B C 结果为结果为True A B Or B= C 结果为结果为False3.6.4 布尔运算符与布尔表达式布尔运算符与布尔表达式第三章第三章 VBVB程序设计代码基础程序设计代码基础37例例: 将以下条件写成将以下条件写成VB布尔表达式布尔表达式 1. m1- n1jm1+ n1 2. X 5 3. M和和N之一为之一为5,但不能同时为,但不能同时为5 4. -100k= M1-N1) And (J = M1+N1)2. (X 5.0)3. (M = 5) And (N5) Or (M 5

36、) And (N = 5)4. (K -100) And (K 100) And (K Mod 2 = 0 )5. (X 0) And (X-1.0)*(X-2.0) = 0.0)第三章第三章 VBVB程序设计代码基础程序设计代码基础38 ( ) 函数运算函数运算算术运算算术运算关系运算关系运算布尔运算布尔运算例:设例:设a=3,b=5,c=-1,d=7,求以下表达式的值。求以下表达式的值。FalseTrue False TrueTrue6 True False Falsea + b c + d And a = 5 Or Not c 0 Or d 083.6.5 表达式的运算顺序表达式的运算顺序第三章第三章 VBVB程序设计代码基础程序设计代码基础393.7 代码书写规则及格式约定代码书写规则及格式约定1. 每条语句完成某种功能,通常单独

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论