Visual Basic 6.0 语言基础

上传人:ldj****22 文档编号:48551710 上传时间:2018-07-17 格式:PPT 页数:65 大小:380.50KB
返回 下载 相关 举报
Visual Basic 6.0 语言基础_第1页
第1页 / 共65页
Visual Basic 6.0 语言基础_第2页
第2页 / 共65页
Visual Basic 6.0 语言基础_第3页
第3页 / 共65页
Visual Basic 6.0 语言基础_第4页
第4页 / 共65页
Visual Basic 6.0 语言基础_第5页
第5页 / 共65页
点击查看更多>>
资源描述

《Visual Basic 6.0 语言基础》由会员分享,可在线阅读,更多相关《Visual Basic 6.0 语言基础(65页珍藏版)》请在金锄头文库上搜索。

1、Visual Basic 6.0 语言基础计算机学院 何智涛VB 第2-3讲基本主题 编码基础 数据类型 变量与声明 分支、循环和控制 数组 过程,函数和调用方式编码基础编码基础 单行语句分成多行,使用续行符“ _” 。 将多个语句合并到同一行上 ,使用“:”来分 隔。 一行允许有255个字符 在代码中添加注释 使用西文单引号 “ ”来标注一行; 使用“视图工具栏编辑”中的“设置/解除注释块 ”功能来标注一块注释或取消。编码基础 Visual Basic 的命名约定 它们必须以字母开头。(也可以用中文) 它们不可以包含嵌入的句号或者类型声明字符(规定 数据类型的特殊字符 “”, “$”)。 它

2、们不能超过 255 个字符。控件、窗体、类和模块 的名字不能超过 40 个字符。*VB中汉字和西文字符 都算作一个字,占两个字节。 它们不能和受到限制的关键字同名。包括预定义语句 (比如 If 和 Loop)、函数(比如 Len 和 Abs)和 操作符(比如 Or 和 Mod)。 可用关键字命名的特例 窗体和控件可以和受到限制的关键字同名。 例如,可以将某个控件命名为 Loop。但引用方 法是特殊的。 Loop.Visible = True 出错 使用限定方法或加方括号 MyForm.Loop.Visible = True 用窗体名将其限定 Loop.Visible = True 方括号起了作

3、用 数据类型数据类型 Numeric类型:Integer,Long,Single,Double,Currency 。 Date类型:公元100/1/1 9999/12/31,0:00:00-23:59:59 。 Boolean类型:True/False, -1/0, 非0和0 String类型: 0-65535个字符,“”, “ ” Object类型: 用于引用程序中的对象 Variant类型:Date 数据类型 Date类型表示方法 表示法:用括起来的、字面上可被看作时间和 日期的字符 1 Jan,97 1998-5-12 12:30:00 PM# 数字表示法:整数代表日期,小数代表时间 范

4、围从公元100年1月1日到9999年12月31日 0代表1900年1月1日 0:00 AM -2.5代表了1899年12月28日 12:00:00Variant类型 变体类型:智能类型,可指代任何未定义的变 量。 特殊值: Empty(空):未赋值。 Null(无效):数据不合法。 Error(出错):过程中出现一个错误条件。 Nothing(无指向):没有指向任何确定的对象。 VarType() 用来检测当前的变体变量中的数据 类型。自定义类型 使用Type可以来定义自定义类型 Type 自定义类型名 元素名(下标) As 类型名 End Type Dim 变量名 As 自定义类型名 注意:

5、 自定义类型必须在标准模块中定义,默认为Public 自定义类型元素可以为字符串类型,但必须定长 注意定义合理的自定义类型名称,以免造成与实际变 量名的混淆自定义类型举例 Type StudType intNo as Integer strName as String * 20 strSex as String * 1 SngMark(1 to 4) as Single sngTotal as Single End TypeDim Student as StudType Student.intNo = 3012 Student.SngMark(4) = 89.5变量与声明变量与声明 显式声明

6、Dim x Dim x as integer Dim x as integer, y as integer 隐式声明(均为Variant类型) Temp = Dialog1.Text1.Caption 声明强制手段,在模块文件的顶部填入 Option Explicit 将强制用户对所有变量的 显式声明 常量声明: Const PI 3.14159 系统常量 vbNormal = 0, 便于程序的阅读和理解运算符 算术 “+”,“-”,“*”,“/”,“”【整除】, Mod 字符串 “&”:在进行连接前均强制转为字符型 “+”:要求两侧均为字符类型 关系 “”, “”, “”, “”, “Lik

7、e”(比较字符串模式), “Is”(比较对象引用) 操作数为数值,按大小 操作数为字符型,按字符的ASCII码值从左到右依 次比较 逻辑 Not,And,Or, Xor,Eqv 系统将以数值的二进制值逐位进行逻辑运算表达式 书写规则 乘号不能省略 a*b OK! ab ? 括号成对出现,均使用圆括号“()” 不同数据类型的转换 操作数的精度不一致,结果使用精度高的类型 Integer 关系 逻辑 (Var*5 = 100 )基本语句 赋值 Let x = 5 交互 输入:InputBox(提示,标题,缺省,X坐标,Y坐标) StrA = InputBox(“请输入”,“输入框”,“A”)输出:

8、函数:变量% = MsgBox(提示,按钮,标题)过程:MsgBox 提示,按钮,标题 分支与选择分支选择 一条分支执行后,其他分支将不被执行IfThen IfThenElse If.ThenElseIf Select Case IfThen(单分支) If condition Then statementIf x 0 then y=sin(x)+sqr(x*x+1) Else y=cos(x)-x3+3*x End if If.ThenElseIf(多分支) 用 If.Then.Elseif 块定义几个语句块, 只执行其中一个语句:If condition1 Then 当条件1满足执行语句

9、1 statementblock-1ElseIf condition2 Then 否则判断条件 2 statementblock-2 ElseIf condition3 Then 否则判断条件 3 statementblock-3 . Else 当所有以上条件不满足,则执行语句 n statementblock-n End IfIf.ThenElseIf举例 在StrC变量中存放了一个字符,判断该字符是 字母、数字或其他 程序片断 If (strC = “a” And strc =“A” And _ strC = “0” And StrC 10 Is 关系表达式IfThen & Select

10、Case 举例 由计算机来给出一系列的110的操作数和运 算符,学生输入答案,计算机根据学生的答 案判断正确与否,当结束时给出成绩。 设计 界面设计(结果显示框,答案输入框,按钮,考 题显示) 随机数产生运算数和运算符号,拼接为考题 用户输入答案,判断并打印结果 在结束时统计并打印成绩循环与控制循环 循环结构允许重复执行一行或数行代码。 Visual Basic 支持的循环结构有: DoLoop ForNext For Each.Next Do Loop 的两种结构形式形式1:Do While 语句块 Loop先判断后执行,可能一 次也不执行形式2:Do 语句块 Loop While 先执行后

11、判断,至少执 行一次Do Loop 的举例 Dim I as Integer, n as Long Dim t as Single, e as Single e=0 存放累加和结 果 i=0 计数器 n=1 存放阶乘的值 t=1 第n项的值,初 值为1 Do While t 0.00001 e = e + t 累加和 i = i+ 1 循环次数 n = n * i 连乘积 t = 1 / n Loop Print 计算自然对数e的近似 值,要求误差小于 0.00001,其计算公式 为 e = 1 + 1/1! + 1/2! + 分析: 在不断循环的基础上 进行累加和连乘。 用单项值的精度来控

12、制循环的结束。 有几个循环呢? 循环计数值如何用于 计算?ForNextFor 循环变量 = 初值 to 终值 Step 步长 语句块 Next 循环变量注意: 初值只被赋值一次。 循环变量超过终值将终止循环。 循环终止后循环变量的值保持不变,注意处理 。ForNext循环嵌套举例 乘法九九表打印。 用循环变量作为乘数和被乘数即可解决。 用Picture.Print命令即可逐行打印结果2. 上、下三角九九表打印?3. 注意 内外循环变量不能同名,并列循环可以同名 内外循环不能交叉,可以嵌套For Each.Next For Each.Next 循环对数组或对象集合中的 每一个元素重复一组语句,

13、而不是重复语句一 定的次数。如果不知道一个集合有多少元素, 该循环方式将非常有用。 For Each.Next 循环的语法如下: For Each element In group statements Next elementFor Each Next 举例 Sub ListTableDefs () 将指定Mdb文件中的表名添加到链表List1中 Dim objDb As Database Dim MyTableDef as TableDef Set objDb = OpenDatabase(“c:vbbiblio.mdb“, True, False) For Each MyTableDef

14、 In objDb.TableDefs () List1.AddItem MyTableDef.Name Next MyTableDefEnd Sub Microsoft Excel电子表格文件处理使用For Each Next 的限制 对集合,element 只能是 Variant 变量,或一 般的 Object 变量 对数组,element 只能是 Variant 变量。 For Each.Next 不能与用户自定义类型的数 组一起使用,因为 Variant 不可能包含用户自 定义类型。 使用循环控制结构在 VB中,控制结构的嵌套层数没有限制。为使判定结构和循 环结构更具可读性,使用缩排方

15、式。下面的过程要把打印机和屏幕共有的字体名全部打印出来: Private Sub Form_Click ()Dim SFont, PFontFor Each SFont In Screen.Fonts ()For Each PFont In Printer.Fonts ()If SFont = PFont ThenPrint SFontEnd IfNext PFontNext SFont End Sub 注意,第一个 Next 关闭了内层的 For 循环,而最后一个 For 关闭了外层的 For 循环。同样,在嵌套的 If 语句中 ,End If 语句自动与最靠近的前一个 If 语句配对。控制 Goto 标号 若需退出循环和过程(当需要达到的目的已 经达到时,如循环查找字符) Exit For Exit do Exit Sub Exit Function End 语句 End,End Sub End if, End Select Stop 语句 设置断点!控制举例错误收集Sub E

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号