版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、主讲:陈学东主讲:陈学东 常丹常丹Tel: 51688529 Tel: 51688529 E-Mail: E-Mail: 北京交通大学经济管理学院信息管理系北京交通大学经济管理学院信息管理系2v教学目标教学目标u准确理解变量、常量的概念,重点掌握变量、常量的作用范围; u熟悉VB数据类型的分类及使用,了解各类型存储数据值的范围; u特别留意VB中变量使用与C中的区别(强制类型定义语句的使用) u掌握数组的使用:定义、一维、多维;固定数组、动态数组;Variant型数组; u熟悉VB运算符、表达式。3v3.1 3.1 编程风格编程风格u1、编程风格格式化代码示例u2、为 MsgBox、Input
2、Box 及 SQL 查询创建字符串v3.2 3.2 变量和常量变量和常量v3.3 3.3 数据类型数据类型v3.4 3.4 数组数组v3.5 3.5 运算符和表达式运算符和表达式v第三章作业第三章作业4对象、变量及过程的命名约定:对象、变量及过程的命名约定:用一致的前缀来命名对象。例:chkReadOnly、mnuFileOpen标记和注释编码的标准化格式:标记和注释编码的标准化格式:u过程和函数都应以注释开始uVB中注释语句:以单引号()打头号描述这段过程的功能(干什么),不包括执行过程细节(怎么做的)。代码本身和必要的嵌入注释将描述实现过程。也应描述传递给过程的参数。被过程改变的函数返回值
3、和全局变量,特别是通过引用参数的那些,也必须在每个过程的起始处描述它们。长语句的分隔(长语句的分隔(_)_)及短语句的合并(及短语句的合并(: :)空格、格式化及缩排的准则。空格、格式化及缩排的准则。5目的:在用户列表数组中找出一个指定用户的第一次出现位置。输入: strUserList():被搜索的用户列表。 strTargetUser:要搜索的用户名。返回: 在rasUserList 数组中rsTargetUser的第一次出现的索引。如果目标用户没找到,返回-1。Function intFindUser (strUserList() As String, strTargetUser As
4、String) As IntegerDim i As Integer 循环计数器。Dim blnFound As Integer 目标寻找标志。intFindUser = -1i = 0While i 1988TitlesQry.SQL = QRY7v常数:程序处理中一直不变的、可以直接使用的数常数:程序处理中一直不变的、可以直接使用的数v变量:变量:临时存储数据,具有名字和数据类型uOption Explicit语句:强制声明变量u应该给变量加前缀来指明它们的数据类型,以及变量范围v常量:常量:在执行中,值保持不变。u对于常量名,应遵循与变量相同的规则。81.1.变量声明变量声明Dim|Pr
5、ivate|Public|Static VariantName As TypeNamev变量总是被定义在尽可能小的范围内。可有下列范围及作用域:(1)过程级:子过程或函数过程中的 Private作用范围:在声明它的过程中(子过程或函数中缺省)(2)模块级:窗体或代码模块(.frm、.bas )的声明部分中的 Private (窗体模块声明中缺省)作用范围:窗体或代码模块中的每一个过程(3)全局:代码模块(.bas)的声明部分中的Public作用范围:应用程序中的每一处9(4)静态变量:在过程结束后,变量的值仍然保留着。u将局部变量定义成静态的,可保留其值。在过程内部用Static关键字声明一个
6、或多个变量,其用法和 Dim 语句完全一样。Function RunningTotal (num)Static ApplesSold As SingleApplesSold = ApplesSold + numRunningTotal = ApplesSoldEnd Function102.2.常量:可用常量大幅度地改进代码的可读性和可维护性常量:可用常量大幅度地改进代码的可读性和可维护性。u格式:const as 类型=表达式u不能象对变量那样修改常量,也不能对常量赋以新值。u用户定义的常量是用 Const 语句来声明的。Public Const conMaxPlanets As Integ
7、er = 9Const conReleaseDate = #1/1/95#u和变量声明一样, Const 语句也有范围,也使用相同的规则11v数据类型:所有变量都具有数据类型,以决定能够存储哪种数据。数据类型:所有变量都具有数据类型,以决定能够存储哪种数据。u如果在声明中没有说明数据类型,则变量的数据类型为 Variant。它可在不同场合代表不同数据类型。VB自动完成各种必要的数据类型转换。u以声明了特定类型的变量为好,会以更高的效率处理这个数据。u除变量外,数据类型也用于其它场合。如函数的参数也有数据类型。事实上,凡是与数据有关的东西就与数据类型有关。u如:Static YourName A
8、s String Public BillsPaid As Currencyu一个声明语句可将多个声明组合起来,请看下列语句:Private YourName As String,BillsPaid As Currencyu注意:注意:Private Test,Amount,J As Integer 在上例中,变量 Test 和 Amount 是 Variant 数据类型。会导致意外错误。12数据类型数据类型存储空间存储空间范围范围Byte1字节0255Boolean2字节True或FalseInteger2字节-3276832767Long4字节-2147483648 2147483647Si
9、ngle4字节-3.402823E38-1.401298E-45; 1.401298E-45 3.402823E38Double8字节-1.797693134486232E308-4.94065645841247E-324; 4.94065645841247E-3241.797693134486232E308Currency8字节-922337203685477.5808 922337203685477.5807Decimal14字节无小数点时为+/-79228162514264337593543950335,小数点右边有28位数时为+/-7.9228162514264337593543950
10、335Date8字节100年1月1日9999年12月31日Object4字节任何Object引用String020亿Variant同String13Numeric Numeric 数据类型数据类型u几种 Numeric 数据类型:Integer(整型)、Long(长整型)、Single(单精度浮点型)、Double(双精度浮点型)和 Currency(货币型)。与 Variant 类型相比,Numeric 类型占用的存储空间通常要少。u整数的运算速度较快,占据的内存少(2个字节)。u如果变量包含小数,则可将它们声明为 Single、Double 或 Currency 变量。Currency 数
11、据类型支持小数点右面 4 位和小数点左面 15 位;它是一个精确的定点数据类型,适用于货币计算。浮点(Single 和 Double)数比 Currency 的有效范围大得多,但有可能产生小的进位误差。u注意注意 浮点数值可表示为 mmmE Eeee 或 mmmD Deee ,其中 mmm 是假数,而 eee 是指数(以 10 为底的幂)。Single 数据类型的最大正数值为 3.402823E+38,或 3.4 乘以 10 的 38 次方;Double 数据类型的最大正数值是 1.79769313486232D+308 或 1.8 乘以 10 的 308 次方。示例示例3.2 3.2 不同不
12、同NumericNumeric类型数据的精度类型数据的精度14Byte Byte 数据类型数据类型uByte 是从 0 - 255 的无符号类型,用于存储二进制数。u可Byte数组代替String 变量,后者在 ANSI 和 Unicode 格式间进行转换时,变量中的任何二进制数据都会遭到破坏。u在下列任一种情况下,VB都会自动在 ANSI 和 Unicode 之间进行转换:读文件、写文件、调用 DLL 、调用对象的方法和属性时u除一元减法外,所有可对整数进行操作的运算符均可操作 Byte 数据类型。在进行一元减法运算时,VB首先将 Byte 转换为符号整数。u所有数值变量都可相互赋值,也可对
13、 Variant 类型变量赋值。 在将浮点数赋予整数之前, VB要将浮点数的小数部分四舍五入,而不是将小数部分去掉。15String String 数据类型数据类型u如果变量总是包含字符串而从不包含数值,就可将其声明为 String 类型。如:Private S As Stringu可将字符串赋予这个变量,并用字符串函数对它进行操作。S = DatabaseS = Left (S,4)uString 变量或参数是一个可变长度的字符串,随着对字符串赋予新数据,它的长度可增可减。 也可以声明字符串具有固定长度。可用以下语法声明一个定长字符串: Dim EmpName As String * 50u
14、如果赋予字符串的字符少于 50 个,则用空格将不足部分填满。如果赋予字符串的长度太长,则 VB会直接截去超出部分的字符。u在处理定长字符串时,删除空格的 Trim 和 RTrim 函数是很有用的。 u可将标准模块中的定长字符串声明为 Public 或 Private。在窗体和类模块中,必须将定长字符串声明为 Private。uVB中提供和很多字符串处理函数。16Boolean Boolean 数据类型数据类型u若变量的值只是true/false信息,则可将它声明为 Boolean 类型。Boolean 的缺省值为 False。Dim blnRunning As Boolean查看磁带是否在转。
15、If Recorder.Direction = 1 Then blnRunning = TrueEnd ifuBoolean变量可以进行逻辑运算:AND、OR、NOT。示例示例 3.33.3:BooleanBoolean变量显示结果变量显示结果17DATE DATE 数据类型数据类型uDate 和 Time 值既可包含在特定的 Date 数据类型中,又可包含在 Variant 变量中。u当其它数值数据类型转换为 Date 时,小数点左边的值表示 Date 信息,小数点右边的值则代表 Time。午夜为 0,正午为 0.5。负数表示公元 1899 年 12 月 31 日之前的 Date。18Obj
16、ect Object 数据类型数据类型uObject 变量作为 32 位(4 个字节)地址来存储,该地址可引用应用程序中或某些其它应用程序中的对象。可以随后(用 Set 语句)指定一个被声明为 Object 的变量去引用应用程序所识别的任何实际对象。Dim objDb As ObjectSet objDb = OpenDatabase (c:Vb5Biblio.mdb)u在声明对象变量时,请试用特定的类,而不用一般的 Object(例如用 TextBox 而不用 Control,或者象上面的例子那样,用 Database 取代 Object)。运行应用程序之前,Visual Basic 可以决
17、定引用特定类型对象的属性和方法。因此,应用程序在运行时速度会更快。u当使用其它应用程序的对象,并在“对象浏览器”中的“类”列表中列举对象时,不要用 Variant 或一般的 Object,而应声明对象。这样可确保 Visual Basic 能够识别引用的特定类型对象,在运行时解决引用问题。19Variant Variant 数据类型(数据类型(1 1)uVariant 变量能够存储所有系统定义类型的数据。uVisual Basic 会自动完成任何必要的转换。例如: Dim SomeValue 缺省为 Variant。SomeValue = 17SomeValue 包含 17(双字符的串)。So
18、meValue = SomeValue - 15 现在, SomeValue 包含数值 2。SomeValue = “U” & SomeValue 现在, SomeValue 包含 “U2” (双字符的串)。u不必过多关注 Variant 变量中数据的类型就可对 Variant 变量进行操作,但须避免落入陷阱。u如果对 Variant 变量进行数学运算或函数运算,则 Variant 必包含某个数。u如果正在连接两个字符串,则用 & 操作符而不用 + 操作符。20v数组:u用相同名字引用一系列变量,并用数字(索引)来识别它们,以此缩短和简化程序。u一个数组中的所有元素具有相同的数
19、据类型。当然,当数据类型为 Variant 时,各个元素能够包含不同种类的数据。u两种类型的数组:固定大小的数组,它总是保持同样的大小;以及在运行时大小可以改变的动态数组。示例示例3.43.4数组的使用数组的使用( (初始化初始化) )21u固定大小的数组在数组名之后跟一个用括号括起来的上界。例如,Dim Counters (14) As Integer 15 个元素。用关键字 To 显式提供下界(为 Long 数据类型)。例如,Dim Counters (1 To 15) As Integeru多维数组 Static MatrixA (9, 9) As Doubleu可以用 For 循环嵌套有效的处理多维数组。示例示例 3.53.5:数组的输出:数组的输出22v动态数组就可以在任何时候改变大小。有助于有效管理内动态数组就可以在任何时候改变大小。有助于有效管理内存。存。v1.1.创建动态数组创建动态数组u1、给数组附以一个空维数表,就将数组声明为动态数组。Dim DynArray ()u2、用 ReDim 语句分配实际的元素个数。ReDim DynA
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 二零二五年度新型路牙材料研发与应用劳务分包协议4篇
- 2025年建投公司综合快讯项目进度合同丨大干120天执行4篇
- 2024版限量版啤酒销售协议模板
- 探索游戏化教学在小学科学教育中的多元化应用
- 现代企业如何通过技术手段提升安全生产的效率和质量
- 科技与教育结合学生情绪管理策略的现代解读
- 小学数学教学中资源的创造性应用探索
- 2025年度高端酒店餐饮部专业厨师雇佣服务合同3篇
- 上海地区标准化住宅买卖合同模板2024
- 二零二五年度矿山设备租赁与安全监管服务合同2篇
- 开展课外读物负面清单管理的具体实施举措方案
- 2025年云南中烟工业限责任公司招聘420人高频重点提升(共500题)附带答案详解
- 2025-2030年中国洗衣液市场未来发展趋势及前景调研分析报告
- 《智能网联汽车智能传感器测试与装调》电子教案
- 客户分级管理(标准版)课件
- 2023年江苏省南京市中考化学真题
- 供电副所长述职报告
- 校园欺凌问题成因及对策分析研究论文
- 技术支持资料投标书
- 老年人意外事件与与预防
- 预防艾滋病、梅毒和乙肝母婴传播转介服务制度
评论
0/150
提交评论