VisualBasic的数据类型及运算.ppt_第1页
VisualBasic的数据类型及运算.ppt_第2页
VisualBasic的数据类型及运算.ppt_第3页
VisualBasic的数据类型及运算.ppt_第4页
VisualBasic的数据类型及运算.ppt_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

第2章 Visual Basic的数据类型及运算,2.1 数据类型 2.2 常量和变量 2.3 常用内部函数 2.4 表达式,数据类型用来规定数据对象所占用内存空间的大小以及数据对象能够参与的运算。 2.1.1 基本数据类型,2.1 数据类型,1. 数值数据类型 (1) 整型 整型数据是指不带小数点和指数符号的数。整型数据运算速度快、精确,但表示数的范围小。 字节型(Byte):字节型数据在内存中占一个字节,可以存储0255之间的整数。 整型(Integer,类型符为%):整型数在内存中占两个字节,可以存储3276832767之间的整数。例如15、345、654、678%。 长整型(Long,类型符为&):长整型数在内存中占4个字节,可以存储21474836482147483647之间的整数。例如123456、45678&都是长整型。,(2) 实型 实型表示的数据范围大,但有误差,且运算速度较慢。 单精度型(Single,类型符为!):单精度数在内存中占4个字节,可精确到7位有效数字。 双精度型(Double,类型符为#):双精度数在内存中占8个字节。 货币型(Currency,类型符为):主要用来表示货币值,在内存中占8个字节,最多保留小数点后4位,小数点前15位,属于定点实数。,2. 字符数据类型 字符数据类型表示一个字符序列,例如职工的姓名、教师的职称等。 可变长度字符串:指在程序运行期间字符串的长度不固定 固定长度字符串:指在程序运行期间,长度保持不变的字符串。,3. 布尔数据类型 布尔数据类型又称逻辑型,用于表示只有两种取值的数据。 True:逻辑真 False:逻辑假。 在内存中,布尔型数据占两个字节,当布尔型数据转换为整型数据时,True转换为1,False转换为0。当其他类型数据转换为布尔型时,非0数转换为True,0转换为False。,4. 日期数据类型 日期型数据用于表示日期和时间,在内存中占用8个字节,以浮点数形式存储 日期范围:100年1月1日9999年12月31日 时间:0:00:0023:59:59。,5. 对象数据类型 对象型数据可用来引用应用程序中的对象,在内存中占4个字节。可以用Set语句为一个被声明为Object的变量指定一个具体对象,以便引用应用程序所能识别的实际对象。例如: Dim objx As Object Set objxCommand1 objx.Caption确定,6. 可变数据类型 可变数据类型是一种特殊的数据类型,可以表示多种数据类型。如果变量在使用前未加以类型说明,则默认为Variant型。它可以用来存放其他各种类型的数据。 Variant型数据包含4种特定值: P29 Empty Null Error Nothing,2.1.3 用户自定义类型 Public|Private Type 数据类型名 元素名1 As 类型名 元素名2 As 类型名 元素名n As 类型名 End Type 元素的类型可以是基本数据类型,也可以是其他的自定义数据类型。 定义语句应该放在标准模块或窗体模块的声明部分,在窗体的声明中定义Type语句应该指定Private,在模块中的声明部分定义Type语句默认为Public。,例2.2 定义一个学生类型,含有学号、姓名、总成绩和系别4个元素,其中系别元素的数据类型为自定义数据类型Department。Department的自定义数据类型含有系编号和系名称两个元素。 先定义数据类型Department: Type Department DepartmentNo As String*5 DepartmentName As String*15 End Type,再定义数据类型Student: Type Student StudentNo As String*10 StudentName As String*4 StudentScore As Single StudentDep As Department End Type 定义了Student类型之后,就可以说明Student类型的变量了,例如: Dim Stu As Student 然后可以像引用对象的属性那样引用类型的各个成员,例如: Print Stu.StudentNo,计算机所处理的数据存放在内存单元中。机器语言或汇编语言是通过内存单元的地址来访问内存单元,而在高级语言中,无需直接通过内存单元的地址,而只需给内存单元命名,以后通过内存单元的名字来访问内存单元。命了名的内存单元就是常量或变量。 常量:在程序运行期间,其内存单元中存放的数据始终保持不变。 变量:在程序运行期间,其内存单元中存放的数据可以根据需要随时改变。,2.2 常量和变量,2.2.1 常量 1. 直接常量 (1) 数值常量:例如&123、&H7F7FFF& 、1.401298E4 (2) 字符串常量 例如Visual Basic、x5、 (空字符串)等。 (3) 布尔常量 (4) 日期常量 例如 #20051130 10:47:29 pm #,2. 符号常量 符号常量用名字来表示某个常量,将无意义的单纯常量用有含义的符号来表示。 (1) 系统内部定义的常量:Visual Basic提供的常量。 可以在对象浏览器窗口中查看内部常量,具体方法是:选择“视图”“对象浏览器”命令,打开对象浏览器窗口。,这些常量名使用两字符的前缀,例如,用vb表示Visual Basic中的系统常量。例如Visual Basic用vbKeyReturn来表示回车键,,(2) 用户定义常量 Const语句来给常量分配名字、值和类型。 Const 常量名 As 数据类型常量表达式 例如: Const PI3.14159265358979 Const CMax As Integer 9 Const IDate #11/30/2000# Const MyStringWelcome, My friend. Const PI3.14, M As Integer 0, NJasmine,2.2.2 变量 标识符的命名遵循以下规则: 以字母或汉字开头,由字母、汉字、数字或下划线组成,长度不超过255个字符,最后一个字符可以是类型说明符(%,!,#,&,$)。 不能使用Visual Basic中的关键字。 不区分大小写。例如XyZ和xyz是同一个标识符。,各种数据类型的命名前缀约定如表2.1所示。,2. 变量的声明 隐式声明 显式声明 Option Explicit 在“工具”菜单中选择“选项”命令,在打开的对话框中选择“编辑器”选项卡,再将其中的“要求变量声明”选项前的复选标记选中,显式声明变量可用Dim、Static、Private和Public语句。 Dim语句的格式如下: Dim 变量名 As 数据类型名 Dim 变量名类型符 Dim a As Long,b As Double,c As Single 等价于Dim a&,b#,c! Dim mystr As String 定义变长字符串变量 等价于Dim mystr$ 定义变长字符串变量 Dim mystr$ As String *10 定义定长字符串变量,3. 变量的赋值 变量名 表达式 例如: Dim X As Single Dim Y As String Y 10.23 X Y Y X 1,2.3 常用内部函数 函数是Visual Basic的一种程序模块,可以完成特定的功能。函数一般带有一个或多个自变量,在程序设计中称为参数。调用函数时,需要给这些参数提供值,函数对这些参数加以处理后,返回一个计算结果,称为函数值。函数的一般调用格式为: 函数名(参数表),2.2.1 数学函数,数学函数用于各种数学运算。P37 Abs(x) Sqr(x) Exp(x) Log(x) Rnd(x) Sgn(x) Sin(x) Cos(x) Tan(x) Atn(x),说明: (1) 三角函数 三角函数的参数为弧度,如果输入的是角度值,则必须转换为弧度后求其三角函数值。例如求30的正弦值的表达式为:Sin(2.141592*30/180),Rnd函数的参数是可选的,其值决定了Rnd生成随机数的方式: 若x0,以上一个随机数作为种子,产生序列中的下一个随机数。 若x =0,则产生与最近生成的随机数相同的数。 调用Rnd函数之前,使用Randomize语句可产生不相同的随机数数列。语句格式为: Randomize n,(2)随机函数,2.2.2 字符函数,在Visual Basic中,字符采用Unicode统一标准字符集编码。在Unicode编码中,所有的字符都用两个字节表示。P38 Left(s,n) Right(s,n) Mid(s, m , n) Len(s) LenB(s) Ltrim (s) Rtrim(s),Trim(s) LCase(string) UCase(string) String(n,s) InStr( n,s1,s2) Replace(s,s1,s2) Space(n) StrReverse(string),2.2.3 类型转换函数 类型转换函数用于数据类型或形式的转换 Asc(s) Chr(n) Str(x) Val(s) StrConv(s,vbFromUnicode|vbUnicode) Fix(x) Int(x) Round(x,n) Hex(n) Oct(n),2.2.4 日期和时间函数 P40 日期和时间函数可以显示系统的日期和时间,提供某个事件何时发生及持续时间长短等信息。 Now() Date() Time() Day(d) WeekDay(d) Month(d) DateAdd(要增减日期形式,增减量,要增减的日期变量) DateDiff(要间隔日期形式,日期一,日期二),2.2.5 其他函数 1. Tab函数 Print Tab (n) 其中n为整数,确定输出位置的列。 2. Spc函数 Print Spc(n) 其中n为从当前位置输出的空格数。,例2.4 Tab和Spc函数的使用示例。 Private Sub Form_Click() Print “高等数学“; Tab(20); “VB程序设计“ Print “78“; Tab(20); “83“ Print “高等数学“; Spc(20); “VB程序设计“ Print “78“; Spc(22); “83“ End Sub,2. Format函数 使数值、日期或字符串按指定的格式输出。 Format(表达式,格式字符串) 其中格式字符串指定表达式的输出格式。VB系统定义的格式如表2.7所示,用户自定义格式如表2.8所示。 例如: Print Format(0.25, “Percent“) 输出为25.00% Print Format(125.25, “00000.000“) 输出为00125.25 Print Format(125.25, “#.#“) 输出为125.25,4. Shell函数 调用Windows下的应用程序的功能通过Shell函数实现。 Shell(filename,windowstyle) 其中: filename:指明可执行文件,包括可执行文件的路径和文件名。 windowstyle :窗口运行方式 vbHide(或0) 隐藏窗口 vbNormalFocus(或1) 正常窗口 vbMinimizedFocus(或2) 有输入焦点的最小化窗口 vbMaximizedFocus(或3) 最大化窗口 vbNormalNoFocus(或4) 正常无焦点的窗口 vbMinimizedNoFocus(或6) 最小化无焦点窗口。,例2.5 单击窗体,试用Shell函数启动记事本程序,使记事本程序启动后具有正常窗口,并成为当前窗口。 Private Sub Form_Click() I = Shell(“c:Windowsnotepad.exe“, 1) End Sub,5.判断函数 判断函数的返回结果是True或False。 IsNumeric(v)判断表达式是否为数值 IsEmpty(v)判断变量是否已被初始化 IsDate(v)判断表达式是否为日期 IsArray(v)判断变量是否为数组。,运算符和操作数组合成表达式,实现对数据的加工。表达式有一个确定的值和确定的数据类型,表达式中的数据可以是变量、常量和函数。,2.4 表达式,2.4.1 算术表达式 检验算术表达式的结果可以使用Visual Basic的立即窗口。激活立即窗口使用快捷键CtrlG或单击“视图”“立即窗口”命令。 例如,数学式 所对应的Visual Basic表达式可写成: g*m1*m2/r2 或 g*m1*m2/(r*r) 或 g*m1*m2/r/r,2.4.2 字符串表达式 运算符:将后一个字符串连接到前一个字符串的后面,生成一个新的字符串。 &运算符:操作数可以是任何数据类型,&运算符将其他数据类型转换为字符串后再连接。,2.4.3 关系表达式 关系运算符用来进行关系运算,关系表达式的结果是布尔型数据,当关系表达式所表

温馨提示

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

评论

0/150

提交评论