版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第2章 Visual Basic的数据类型及运算2.1数据类型2.2常量和变量2.3运算符和表达式2.4常用内部函数1 数据类型用来规定数据对象所占用内存空间的大小以及数据对象能够参与的运算。 2.1.1基本数据类型 基本数据类型数值型字节型(Byte)整型(Integer)长整型(Long)单精度型(Single)双精度型(Double)货币型(Currency)字符型变长字符串型(String)定长字符串型(String * Size)布尔型(Boolean)日期型(Date)对象型(Object)可变型(Variant)2.1数据类型21. 数值数据类型 (1) 整型 整型数据是指不带小
2、数点和指数符号的数。整型数据运算速度快、精确,但表示数的范围小。 字节型(Byte):字节型数据在内存中占一个字节,可以存储0255之间的整数。 整型(Integer,类型符为%):整型数在内存中占两个字节,可以存储3276832767之间的整数。例如15、345、654、678%。 长整型(Long,类型符为&):长整型数在内存中占4个字节,可以存储21474836482147483647之间的整数。例如123456、45678&都是长整型。 3(2) 实型 实型表示的数据范围大,但有误差,且运算速度较慢。 单精度型(Single,类型符为!):单精度数在内存中占4个字节,可精确到7位有效数
3、字。 双精度型(Double,类型符为#):双精度数在内存中占8个字节。 货币型(Currency,类型符为):主要用来表示货币值,在内存中占8个字节,最多保留小数点后4位,小数点前15位,属于定点实数。42. 字符数据类型 字符数据类型表示一个字符序列,例如职工的姓名、教师的职称等。 可变长度字符串:指在程序运行期间字符串的长度不固定 固定长度字符串:指在程序运行期间,长度保持不变的字符串。53. 布尔数据类型 布尔数据类型又称逻辑型,用于表示只有两种取值的数据。 True:逻辑真 False:逻辑假。 在内存中,布尔型数据占两个字节,当布尔型数据转换为整型数据时,True转换为1,Fals
4、e转换为0。当其他类型数据转换为布尔型时,非0数转换为True,0转换为False。64. 日期数据类型日期型数据用于表示日期和时间,在内存中占用8个字节,以浮点数形式存储日期范围:100年1月1日9999年12月31日时间:0:00:0023:59:59。 75. 对象数据类型对象型数据可用来引用应用程序中的对象,在内存中占4个字节。可以用Set语句为一个被声明为Object的变量指定一个具体对象,以便引用应用程序所能识别的实际对象。例如:Dim objx As ObjectSet objxCommand1objx.Caption确定86. 变体数据类型 可以表示多种数据类型。如果变量在使用
5、前未加以类型说明,则默认为Variant型。它可以用来存放各种类型的数据。 Variant型数据包含4种特定值: P32 Empty Null Error Nothing 92.1.3用户自定义类型Public|Private Type 数据类型名 元素名1 As 类型名 元素名2 As 类型名 元素名n As 类型名End Type元素的类型可以是基本数据类型,也可以是其他的自定义数据类型。 定义语句应该放在标准模块或窗体模块的声明部分。10例 定义一个学生类型,含有学号、姓名、总成绩3个元素。 Type Student No As String*10 Name As String*4 Sc
6、ore As Single End Type 定义了Student类型之后,就可以说明Student类型的变量了,例如:Dim Stu As Student 然后可以像引用对象的属性那样引用类型的各个成员,例如:Stu.No=2012111001 Stu.Name =王芳11 计算机所处理的数据存放在内存单元中。计算机是通过内存单元的地址来访问内存单元,而在高级语言中,无需直接通过内存单元的地址,而只需给内存单元命名,以后通过内存单元的名字来访问内存单元。命了名的内存单元就是常量或变量。 常量:在程序运行期间,其内存单元中存放的数据始终保持不变。 变量:在程序运行期间,其内存单元中存放的数据可
7、以根据需要随时改变。2.2常量和变量122.2.1常量1. 直接常量(1) 数值常量:例如&123、&H7F7FFF& 、1.401298E-4 (2) 字符串常量例如Visual Basic、x5=、 等。(3) 布尔常量(4) 日期常量例如 #2005-11-30 10:47:29 pm # 132. 符号常量 符号常量用名字来表示某个常量。 (1) 系统内部定义的常量: Visual Basic提供的常量。 可以在对象浏览器窗口中查看内部常量,具体方法是:选择“视图对象浏览器”命令,打开对象浏览器窗口。 14系统常量名使用两字符的前缀,例如,用“vb”表示VB中的系统常量。例如,用vbK
8、eyReturn来表示回车键。 15(2) 用户定义常量Const语句来给常量分配名字、值和类型。Const 常量名 As 数据类型常量表达式例如:Const PI3.14159Const CMax As Integer 9Const IDate #11/30/2000#Const MyStringWelcome, My friend.Const PI3.14, M As Integer 0, Nmine 162.2.2变量标识符的命名遵循以下规则: 以字母或汉字开头,由字母、汉字、数字或下划线组成,长度不超过255个字符,最后一个字符可以是类型说明符(%,!,#,&,$)。 不能使用Visu
9、al Basic中的关键字。 不区分大小写。例如XyZ和xyz等价。17各种数据类型的命名前缀约定如下表所示。 182. 变量的声明 隐式声明 显式声明 Option Explicit 执行“工具选项”命令,在打开的对话框中选择“编辑器”选项卡,再将“要求变量声明” 复选标记选中。19显式声明变量可用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
10、$Dim mystr$ As String *10(可在一个dim语句定义多个变量,变量之间用逗号隔开)203. 变量的赋值变量名 表达式例如:Dim X As SingleDim Y As StringY 10.23X YY X 121运算符和操作数组合成表达式,实现对数据的加工。表达式有一个确定的值和确定的数据类型,表达式中的数据可以是变量、常量和函数。 运算符种类优先级运算符(按优先顺序)算术运算符1()、 、 *、/、 Mod、 字符运算符2、& 关系运算符3、like、is 逻辑运算符4Not、 And、 Or、 Xor、 Eqv、 Imp2.3表达式222.3.1算术表达式检验算术
11、表达式的结果可以使用VB的立即窗口。激活立即窗口,执行“视图立即窗口”命令。例如,数学式 所对应的VB表达式可写成:g*m1*m2/r2 或 g*m1*m2/(r*r) 或 g*m1*m2/r/r 232.3.2字符串表达式“”运算符:将后一个字符串连接到前一个字符串的后面,生成一个新的字符串。“&”运算符:操作数可以是任何数据类型,将其他数据类型转换为字符串后再连接。 242.3.3关系表达式关系运算符用来进行关系运算,关系表达式的结果是布尔型数据,当关系表达式所表达的比较关系成立时,结果为True,否则为False。 25关系运算符“Like”用于字符的比较。如果第一个表达式是属于第二个表
12、达式所描述的字符串,则结果为真,否则为假。在第二个表达式中可以使用通配符?、 *和字符列表。P40字符列表:用中括号括起来。!字符列表表示没有列表中的字符。Print abc Like a* 结果为TruePrint 123 Like 12? 结果为TruePrint 456 Like 45# 结果为TruePrint this is a book Like *a ba, o, cok 结果为TruePrint abc Like !a,b,c 结果为False262.3.4逻辑表达式 逻辑运算符用来进行逻辑运算,逻辑表达式的结果是布尔型数据,运算对象为布尔型数据或数值型数据。 运算符含义Not
13、取反运算,将两个逻辑值互相转换And与运算,两个操作数都为真,结果才为真,否则为假Or或者运算,两个操作数中只要有一个为真,结果为真Xor异或运算,两个操作数不同时为真,否则为假Eqv等价运算,两个操作数相同时为真,否则为假Imp蕴含运算,当第一个表达式为真,且第二个表达式为假时,结果为假,否则为真27例如:描述条件 “身高大于1.68米的男性或者身高大于1.58米的女性” :length 1.68 And sex = 男 Or sex = 女 And length 1.58282.3.5表达式求值和运算符的优先级算术运算符字符运算符关系运算符逻辑运算符VB中还规定不同数据类型的数值数据在运算
14、时,按精度高的数据类型进行运算。数值数据类型的精度高低次序如下:IntegerLongSingleDoubleCurrency292.4常用内部函数函数是VB的一种程序模块,可以完成特定的功能。函数一般带有一个或多个自变量,在程序设计中称为参数。调用函数时,需要给这些参数提供值,函数对这些参数加以处理后,返回一个计算结果,称为函数值。函数的一般调用格式为:函数名(参数表) 例如:x Abs(2.5)Sqr(10) 调用绝对值函数和平方根函数Print Asc(A) 输出字符A 的ASCII码 302.4.1数学函数数学函数用于各种数学运算。P37Abs(x)Sqr(x)Exp(x)Log(x)
15、Rnd(x)Sgn(x)Sin(x)Cos(x)Tan(x)Atn(x) 31说明:(1) 三角函数 三角函数的参数为弧度,如果输入的是角度值,则必须转换为弧度后求其三角函数值。例如求30的正弦值的表达式为:Sin(2.141592*30/180) 32 Rnd函数的参数是可选的,其值决定了Rnd生成随机数的方式:若x0,以上一个随机数作为种子,产生序列中的下一个随机数。若x =0,则产生与最近生成的随机数相同的数。 调用Rnd函数之前,使用Randomize语句可产生不相同的随机数数列。语句格式为:Randomize n(2)随机函数332.4.2字符函数 在Visual Basic中,字符
16、采用Unicode统一标准字符集编码。在Unicode编码中,所有的字符都用两个字节表示。P38 Left(s,n)Right(s,n)Mid(s, m , n)Len(s)LenB(s)Ltrim (s)Rtrim(s)34Trim(s)LCase(string)UCase(string)String(n,s)InStr( n,s1,s2)Replace(s,s1,s2)Space(n)StrReverse(string)352.4.3类型转换函数类型转换函数用于数据类型或形式的转换 Asc(s) Chr(n) Str(x) Val(s) StrConv(s,vbFromUnicode|vb
17、Unicode) Fix(x) Int(x) Round(x,n) Hex(n) Oct(n)362.4.4日期和时间函数日期和时间函数可以显示系统的日期和时间,提供某个事件何时发生及持续时间长短等信息。 Now() Date() Time() Day(d) WeekDay(d) Month(d) DateAdd(要增减日期形式,增减量,要增减的日期变量) DateDiff(要间隔日期形式,日期一,日期二) 372.4.5其他函数1. Tab函数Print Tab (n)其中n为整数,确定输出位置的列。 2. Spc函数Print Spc(n)其中n为从当前位置输出的空格数。38 例Tab和S
18、pc函数的使用示例。Private Sub Form_Click()Print 高等数学; Tab(20); VB程序设计Print 78; Tab(20); 83Print 高等数学; Spc(20); VB程序设计Print 78; Spc(22); 83End Sub393. Format函数使数值、日期或字符串按指定的格式输出。Format(表达式,格式字符串) 其中格式字符串指定表达式的输出格式。VB系统定义的格式如表2.7所示,用户自定义格式如表2.8所示。例如:Print Format(0.25, Percent) 输出为25.00%Print Format(125.25, 00000.000) 输出为00125.25Print Format(125.25, #.#) 输出为125.25404. Shell函数调用Windows下的应用程序的功能通过Shell函数实现。Shell(filename,windowstyle)其中:filename:指明可执行文件,包括可执行文件的路径和文件名。windowstyle :窗口运行方式 vbHide(或0)隐藏窗口 vbNormalFocus(或1)正常窗口 vbMinimizedFocus(或2)有输入焦点的最小化窗口 vbMaximizedFocus(或3)最大
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年水果采摘体验活动运营合同范本3篇
- 二零二五版文化艺术品搬运与保管合同规范3篇
- 氢氧化钙维修保养2025年度合同3篇
- 二零二五年度影视制作资金周转借款合同4篇
- 湖南储备粮代储合同(二零二五年度)标准模板3篇
- 2025年水塘承包水资源利用与环境保护合同3篇
- 2025年智慧城市建设招投标与合同执行监管协议3篇
- 二零二五年金融科技存货质押融资服务合同3篇
- 2025年消防工程招投标代理服务合同范本7篇
- 二零二五年度航空航天零部件质量监管服务协议书3篇
- 春节文化常识单选题100道及答案
- 2024年杭州师范大学附属医院招聘高层次紧缺专业人才笔试真题
- 制造业BCM业务连续性管理培训
- 24年追觅在线测评28题及答案
- TGDNAS 043-2024 成人静脉中等长度导管置管技术
- 《陆上风电场工程概算定额》NBT 31010-2019
- 工程建设项目内外关系协调措施
- 招投标法考试试题及答案
- 皮带输送机工程施工电气安装措施要点
- 药房(冰柜)温湿度表
- QJ903.9A-1995航天产品工艺文件管理制度管理用工艺文件编制规则
评论
0/150
提交评论