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

下载本文档

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

文档简介

Visual Basic 程序设计教程,卢肖霞 81340122 信息技术教研室,第2章 Visual Basic的数据类型及运算,2.4 表达式,2.1 数据类型,数据类型用来规定数据对象所占用内存空间的大小以及数据对象能够参与的运算。 2.1.1 基本数据类型,基本数据类型,字符型,变长字符串型(String) 定长字符串型(String * Size),布尔型(Boolean) 日期型(Date) 对象型(Object),可变型(Variant),1. 数值数据类型,(1) 整型 整型数据是指不带小数点和指数符号的数。整型数据运算速度快、精确,但表示数的范围小。 字节型(Byte):字节型数据在内存中占一个字节,可以存储0255之间的整数。 整型(Integer,类型符为%):整型数在内存中占两个字节,可以存储3276832767之间的整数。例如15、345、654、678%。 长整型(Long,类型符为&):长整型数在内存中占4个字节,可以存储21474836482147483647之间的整数。例如123456、45678&都是长整型。,1. 数值数据类型,(2) 实型 实型表示的数据范围大,但有误差,且运算速度较慢。 单精度型(Single,类型符为!):单精度数在内存中占4个字节,可精确到7位有效数字。 双精度型(Double,类型符为#):双精度数在内存中占8个字节。 货币型(Currency,类型符为):主要用来表示货币值,在内存中占8个字节,最多保留小数点后4位,小数点前15位,属于定点实数。,2. 字符数据类型,字符数据类型(String)表示一个字符序列,例如职工的姓名、教师的职称等。 可变长度字符串(String*Size):指在程序运行期间字符串的长度不固定 固定长度字符串:指在程序运行期间,长度保持不变的字符串。,3. 布尔数据类型,布尔数据类型(Boolean)又称逻辑型,用于表示只有两种取值的数据。 True:逻辑真 False:逻辑假。 在内存中,布尔型数据占两个字节,当布尔型数据转换为整型数据时,True转换为1,False转换为0。 当其他类型数据转换为布尔型时,非0数转换为True,0转换为False。,4. 日期数据类型,日期型(Date)数据用于表示日期和时间,在内存中占用8个字节,以浮点数形式存储 日期范围:100年1月1日9999年12月31日 时间:0:00:0023:59:59。,6. 可变数据类型,可变数据类型(Variant)是一种特殊的数据类型,可以表示多种数据类型。如果变量在使用前未加以类型说明,则默认为Variant型。它可以用来存放其他各种类型的数据。 Variant型数据包含4种特定值: Empty Null Error Nothing,2.1.3 用户自定义类型,元素的类型可以是基本数据类型,也可以是其他的自定义数据类型。 定义语句应该放在标准模块或窗体模块的声明部分,在窗体的声明中定义Type语句应该指定Private,在模块中的声明部分定义Type语句默认为Public。,2.1.3 用户自定义类型,例3.2 定义一个学生类型,含有学号、姓名、总成绩和系别4个元素,其中系别元素的数据类型为自定义数据类型Department。Department的自定义数据类型含有系编号和系名称两个元素。 先定义数据类型Department:,再定义数据类型Student:,定义了Student类型之后,就可以说明Student类型的变量了,例如:Dim Stu As Student 然后可以像引用对象的属性那样引用类型的各个成员,例如:Print Stu.StudentNo,2.2 常量和变量,计算机所处理的数据存放在内存单元中。机器语言或汇编语言是通过内存单元的地址来访问内存单元,而在高级语言中,无需直接通过内存单元的地址,而只需给内存单元命名,以后通过内存单元的名字来访问内存单元。命了名的内存单元就是常量或变量。 常量:在程序运行期间,其内存单元中存放的数据始终保持不变。 变量:在程序运行期间,其内存单元中存放的数据可以根据需要随时改变。,2.2.1 常量,1. 直接常量 (1) 数值常量:例如&123、&H7F7FFF& 、1.401298E4 (2) 字符串常量,(3) 布尔常量 例如:True或False (4) 日期常量,2.2.1 常量,2. 符号常量 符号常量用名字来表示某个常量,将无意义的单纯常量用有含义的符号来表示。 系统内部定义的常量:Visual Basic提供的常量。 这些常量名使用两字符的前缀,例如,用vb表示Visual Basic中的系统常量,用xl表示Excel中的常量,用db表示DAO(Data Access Object,数据访问对象)对象库中的常量。 例如:vbKeyReturn(回车键), vbRed(红色),vbBlue(蓝色),2.2.1 常量,(2) 用户定义常量 Const语句来给常量分配名字、值和类型。 Const 常量名 As 数据类型常量表达式,2.2.2 变量,1. 标识符的命名遵循以下规则: 以字母或汉字开头,由字母、汉字、数字或下划线组成,长度不超过255个字符,最后一个字符可以是类型说明符(%,!,#,&,$)。 不能使用Visual Basic中的关键字。 不区分大小写。例如XyZ和xyz是同一个标识符。,各种数据类型的命名前缀约定如表3.1所示。,2.2.2 变量,2. 变量的两种声明方式: 隐式声明 :不加任何声明而直接使用 显式声明:先声明再使用 在各模块的声明部分添加Option Explicit 语句 在“工具”“选项”命令对话框中设置选中选项“要求变量声明”。,2.2.2 变量,3.变量声明语句DIM 格式如下: Dim 变量名 As 数据类型名 其中:变量是用户定义的标识符, “As 数据类型名”定义变量的类型,省略默认为Variant型。,2.2.2 变量,例如: Dim a&,b# 等价于 Dim a As Long,b As Double Dim mystr As String 定义变长字符串变量 Dim mystr$ 定义变长字符串变量 Dim mystr$ As String *10 定义定长字符串变量,2.2.2 变量,3. 变量的赋值 变量名 表达式 Dim X As Single Dim Y As Single Y 10.23 X Y Y X 1,2.2.2 变量,4. 变量的引用 例如:X=Cos(Y) X=X+1,函数是Visual Basic的一种程序模块,可以完成特定的功能。函数一般带有一个或多个自变量,在程序设计中称为参数。调用函数时,需要给这些参数提供值,函数对这些参数加以处理后,返回一个计算结果,称为函数值。函数的一般调用格式为: 函数名(参数表),例如: x Abs(3.5)Sqr(10) 调用绝对值函数和平方根函数 Print Asc(A) 输出字符A 的ASCII码,2.3.1 数学函数,数学函数用于各种数学运算 Abs(x) Sqr(x) Exp(x) Log(x) Rnd(x),Sgn(x) Sin(x) Cos(x) Tan(x) Atn(x),(1) 三角函数,三角函数的参数为弧度,如果输入的是角度值,则必须转换为弧度后求其三角函数值。例如求30的正弦值的表达式为:Sin(3.141592*30/180),(2)随机函数,调用Rnd函数之前,使用Randomize语句可产生不相同的随机数数列。语句格式为: Randomize n 其中n是一个整数,作为随机数发生器的种子。若省略n,则将根据系统时钟获得种子。 产生N,M区间的随机数公式: Int(Rnd *(M-N+1)+N,2.3.2 字符函数,在Visual Basic中,字符采用Unicode统一标准字符集编码。在Unicode编码中,所有的字符都用两个字节表示。 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.3.2 字符函数,2.3.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.3.4 日期和时间函数,日期和时间函数可以显示系统的日期和时间,提供某个事件何时发生及持续时间长短等信息。 Now() Date() Time() Day(d) WeekDay(d) Month(d) DateAdd(要增减日期形式,增减量,要增减的日期变量) DateDiff(要间隔日期形式,日期一,日期二),2.3.5 其他函数,1. Tab函数 Print Tab (n) 其中n为整数,确定输出位置的列。 2. Spc函数 Print Spc(n) 其中n为从当前位置输出的空格数。,2.3.5 其他函数,例3.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.3.5 其他函数,3. Format函数 Format函数使数值、日期或字符串按指定的格式输出。 Format(表达式,格式字符串) 其中格式字符串指定表达式的输出格式。Visual Basic系统定义的格式如表3.7所示,用户自定义格式如表3.8所示。,2.3.5 其他函数,例如: Print Format(0.25, “Percent“) 输出为25.00% Print Format(125.25, “00000.000“) 输出为00125.250 Print Format(125.25,“#.#“) 输出为125.25,2.3.5 其他函数,4. Shell函数 调用Windows下的应用程序的功能通过Shell函数实现。 Shell(filename,windowstyle) 其中: filename:指明可执行文件,包括可执行文件的路径和文件名。 windowstyle :窗口运行方式 vbHide(或0) 隐藏窗口 vbNormalFocus(或1) 正常窗口 vbMinimizedFocus(或2) 有输入焦点的最小化窗口 vbMaximizedFocus(或3) 最大化窗口 vbNormalNoFocus(或4) 正常无焦点的窗口 vbMinimizedNoFocus(或6) 最小化无焦点窗口。,2.3.5 其他函数,例3.5 单击窗体,试用Shell函数启动记事本程序,使记事本程序启动后具有正常窗口,并成为当前窗口。,2.3.5 其他函数,5.判断函数 判断函数的返回结果是True或False。 IsNumeric(v)判断表达式是否为数值 IsEmpty(v)判断变量是否已被初始化 IsDate(v)判断表达式是否为日期 IsArray(v)判断变量是否为数组。,运算符和操作数组合成表达式,实现对数据的加工。表达式有一个确定的值和确定的数据类型,表达式中的数据可以是变量、常量和函数。,2.4.1 算术表达式,掌握运算符优先级、MOD运算、立即窗口DEBUG的使用 检验算术表达式的结果可以使用Visual Basic的立即窗口。激活立即窗口使用快捷键CtrlG或单击“视图”“立即窗口”命令。,2.4.2 字符串表达式,运算符:将后一个字符串连接到前一个字符串的后面,生成一个新的字符串。 &运算符:操作数可以是任何数据类型,&运算符将其他数据类型转换为字符串后再连接。,掌握和&,注意运算的两种情形,3.4.3 关系表达式,掌握运算结果的类型、各种类型数据的比较(特别是字符的比较) 关系运算符用来进行关系运算,关系表达式的结果是布尔型数据,当关系表达式所表达的比较关系成立时,结果为True,否则为False。,3.4.3 关系表达式,3.4.3 关系表达式,关系运算符“Like”用于字符的比较。如果第一个表达式是属于第二个表达式所描述的字符串,则结果为真,否则为假。在第二个表达式中可以使用通配符和字符列表: 通配符:?表示任何一个字符、*表示任意个字符、#表示任何一个数字。 字符列表:用中括号括起来。 !字符列表表示没有列表中的字符。,3.4.3 关系表达式,abc Like a* 结果为True 123 Like 12? 结果为True 456 Like 45# 结果为True this is a book Like *a ba, o, cok 结果为True abc Like !a,b,c 结果为False,3.4.4 逻辑表达式,逻辑运算符用来进行逻辑运算,逻辑表达式的结果是布尔型数据,运算对象为布

温馨提示

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

评论

0/150

提交评论