第3章 数据表示及基本运算

上传人:壹****1 文档编号:568437582 上传时间:2024-07-24 格式:PPT 页数:46 大小:1.37MB
返回 下载 相关 举报
第3章 数据表示及基本运算_第1页
第1页 / 共46页
第3章 数据表示及基本运算_第2页
第2页 / 共46页
第3章 数据表示及基本运算_第3页
第3页 / 共46页
第3章 数据表示及基本运算_第4页
第4页 / 共46页
第3章 数据表示及基本运算_第5页
第5页 / 共46页
点击查看更多>>
资源描述

《第3章 数据表示及基本运算》由会员分享,可在线阅读,更多相关《第3章 数据表示及基本运算(46页珍藏版)》请在金锄头文库上搜索。

1、安徽财经大学 计算机系第三章第三章 数据表示及基本运算数据表示及基本运算*数据类型数据类型 v什么是数据?什么是数据?v什么是数据的类型?什么是数据的类型? 如:数值型、字符型等如:数值型、字符型等*布尔型数据布尔型数据(Boolean)v什么是布尔型数据?什么是布尔型数据?布尔型数据用于表示双值数据,常用于逻辑判断。布尔型数据用于表示双值数据,常用于逻辑判断。 v布尔型数据的值是什么样的?布尔型数据的值是什么样的?布尔型数据的值仅有两种,即布尔型数据的值仅有两种,即True(真真)或或False(假假)。这。这种值通常称为逻辑值,用两个字节存储。种值通常称为逻辑值,用两个字节存储。 v布尔型

2、数据能与数值型数据转换吗?布尔型数据能与数值型数据转换吗?当把数值型数转换为布尔型时,当把数值型数转换为布尔型时,0会转换为会转换为False,其他,其他非非0值转换为值转换为True。当把布尔值转换为数值型时,。当把布尔值转换为数值型时,False转换为转换为0,True转换为转换为1。数值型数据数值型数据(Numeric)v什么是数值型数据?什么是数值型数据?数值型数据一般用来表示可以进行算术运算的数数值型数据一般用来表示可以进行算术运算的数据,如据,如12,-9.6等。等。 v通常在高级程序设计语言中,数值型数据如通常在高级程序设计语言中,数值型数据如何分类?何分类?整型:整型:即数学运

3、算中的整数即数学运算中的整数v整型又可分为整型和长整型整型又可分为整型和长整型浮点型:浮点型:即数学运算中的实数即数学运算中的实数v浮点型可分为单精度和双精度浮点型。浮点型可分为单精度和双精度浮点型。 *数值型数据的分类数值型数据的分类v(1) 整型数整型数(Integer):整型数是不含小数和指数的数,其取值范围为整型数是不含小数和指数的数,其取值范围为3276832767,即,即-215215-1。在内存中占。在内存中占2个个字节(字节(16位)。例如,位)。例如,-10,21,100,-5007等等都是整型数。都是整型数。v(2) 长整型数长整型数(Long):长整型数的数字组成与整型数

4、相同,其取值范围长整型数的数字组成与整型数相同,其取值范围为为-21474836482147483647,即,即-231231-1。在内存中要占在内存中要占4个字节个字节 (32位位)。 *v(3) 单精度浮点型数单精度浮点型数(Single):浮点数也称为实型数或实数,是带小数部分的数值。浮点数也称为实型数或实数,是带小数部分的数值。v单精度浮点数以单精度浮点数以4个字节个字节(32位位)存储,可精确到存储,可精确到7位十进制数。单位十进制数。单精度数的精度数的负数取值范围为负数取值范围为-3.402823E+38-1.401298E-45,正数正数的取值范围为的取值范围为1.401298E

5、-453.402823E+38。单精度数可用定点形式和浮点形式来表示:单精度数可用定点形式和浮点形式来表示:v定点形式就是我们在数学中常用的小数形式。例如:定点形式就是我们在数学中常用的小数形式。例如:5.347,-0.125等。等。v浮点形式是用科学计数法,即以浮点形式是用科学计数法,即以10的整数次幂表示数,以的整数次幂表示数,以“E”(或或“e”)来表示底数来表示底数10。例如,。例如,1.25E+11表示表示1.251011,而,而-2.1234E-15表示表示-2.123510-15等。等。数值型数据的分类数值型数据的分类*v(4) 双精度浮点型数双精度浮点型数(Double):用用

6、8个字节个字节(64位位)存储,可表示最多存储,可表示最多15或或16位有效数字的位有效数字的数。数。双精度数的负数取值范围为双精度数的负数取值范围为-1.79769313486232D+308-4.94065645841247D-324正数的取值范围为正数的取值范围为4.94065645841247D-3241.79769313486232D+308v双精度数也有定点和浮点两种形式双精度数也有定点和浮点两种形式v注意其浮点形式中是用注意其浮点形式中是用“D”(或或“d”)来代表指数来代表指数的底数,例如,的底数,例如,3.645D+11,-1.25978D51,2.13434D-28等。等。

7、数值型数据的分类数值型数据的分类*字符串型数据字符串型数据 (String)v哪些数据是字符串型数据?哪些数据是字符串型数据?字符串型数据是指一切可打印的字符或字符的序字符串型数据是指一切可打印的字符或字符的序列。列。字符串型数据一般用来表示文字类的数据,如:字符串型数据一般用来表示文字类的数据,如:姓名、地址、身份证号、编码等。姓名、地址、身份证号、编码等。v形式形式用双引号括起来的若干个字符。用双引号括起来的若干个字符。字符串中所含的字符可以是除双引号和回车符之字符串中所含的字符可以是除双引号和回车符之外的任何外的任何ASCII字符,如,字符,如,“Good”、“101”、“I am st

8、udent”。 “中国的长城太伟大了!中国的长城太伟大了!”。 *字符串分为两种类型字符串分为两种类型v在一些高级程序设计语言中,字符串还可以在一些高级程序设计语言中,字符串还可以按长度是否变化分为两种类型:按长度是否变化分为两种类型:变长字符串变长字符串v变长字符串是指字符的长度是不固定的,它的长度可变长字符串是指字符的长度是不固定的,它的长度可随时变化。其长度不能超过随时变化。其长度不能超过20亿个字符。缺省为变长亿个字符。缺省为变长字符串。字符串。定长字符串定长字符串v定长字符串是指它在程序执行过程中,始终保持其长定长字符串是指它在程序执行过程中,始终保持其长度不变的字符串。其长度不能超

9、过度不变的字符串。其长度不能超过65535个字节。个字节。v例如例如可规定学生学号的长度为可规定学生学号的长度为10位,如果不足位,如果不足10位则用空格将不位则用空格将不足的部分填满,如果长度超足的部分填满,如果长度超10位则截去超出部分的字符。位则截去超出部分的字符。*其他类型数据其他类型数据v(1) 货币型货币型(Currency):是为表示货币而设置的。是为表示货币而设置的。该类型数据以该类型数据以8个字节个字节(64位位)存储,精确到小数存储,精确到小数点后点后4位,小数点前最多可有位,小数点前最多可有15位有效数字,取位有效数字,取值范围为值范围为-922337203685477.

10、5808922337203685477.5807注意:注意:v与浮点数不同,货币型数据的小数点是固定的,因此与浮点数不同,货币型数据的小数点是固定的,因此又称为定点数据类型。又称为定点数据类型。*v(2) 日期日期(Date)型数据:型数据:日期型数据用来表示日期和时间,可以表示多种日期型数据用来表示日期和时间,可以表示多种格式的日期和时间。格式的日期和时间。日期型数据用两个日期型数据用两个“#”符号把表示日期和时间符号把表示日期和时间的值括起来,就像字符串数据用双引号括起来一的值括起来,就像字符串数据用双引号括起来一样。例如,样。例如,#10/28/2001#、#10-28-2001#、#1

11、0/28/2001 10:46:01 pm#等。等。日期型数据在内存中占日期型数据在内存中占8个字节个字节(64位位),可以表,可以表示日期的范围从公元示日期的范围从公元100年年1月月1日至日至9999年年12月月31日。而时间从日。而时间从0:00:00到到23:59:59。其他类型数据其他类型数据*v(3) 对象对象(Object)型数据:型数据:对象型数据可用来表示图形或对象型数据可用来表示图形或OLE对象或其他对对象或其他对象,用象,用4个字节存储。个字节存储。v(4) 变体变体(Variant)型数据:型数据:变体型数据是一种可变的数据类型,可以表示任变体型数据是一种可变的数据类型

12、,可以表示任何值,包括数值、字符串、日期等。何值,包括数值、字符串、日期等。变体型数据表示数值型数据时,占用变体型数据表示数值型数据时,占用16个字节的个字节的存储空间,最大可达存储空间,最大可达Double类型的取值范围。类型的取值范围。表示字符串时,则占用的存储空间等于字符串的表示字符串时,则占用的存储空间等于字符串的长度。长度。其他类型数据其他类型数据*用户自定义类型用户自定义类型v在编程时,有时需要将某些相关的具有不同类型的数据组织在编程时,有时需要将某些相关的具有不同类型的数据组织到一个数据类型中,这种数据类型称为用户自定义类型。在到一个数据类型中,这种数据类型称为用户自定义类型。在

13、Visual Basic中,允许将基本数据类型按需要组合起来,用中,允许将基本数据类型按需要组合起来,用Type语句创建自定义数据类型。语句创建自定义数据类型。其格式为:其格式为:Type 用户类型元素用户类型元素 As 类型类型 用户类型元素用户类型元素 As 类型类型 End Type其中:其中:用户类型名用户类型名是用户定义的数据类型名。是用户定义的数据类型名。用户类型元素用户类型元素可以是任何基本数据类型可以是任何基本数据类型(但不能是数组),也可以是用户定义(但不能是数组),也可以是用户定义的数据类型,如果类型是字符串,则必的数据类型,如果类型是字符串,则必须是定长字符串。须是定长字

14、符串。例如,我们可以定义一个名称为例如,我们可以定义一个名称为Student的自定义类型,用以记的自定义类型,用以记录与学生成绩相关的多项数据:录与学生成绩相关的多项数据:Type studentclass as String *10 num As String *6 name As String *6 sex As Boolean chinese as integer End Type*v在程序执行过程中,常量的值不发生变化,在程序执行过程中,常量的值不发生变化,而变量的值是可以变化的。而变量的值是可以变化的。v例如例如我们按公式计算我们按公式计算T=3.5X+2Y时,时,3.5和和2就是常

15、量,就是常量,而而T就是变量。就是变量。X和和Y是常量还是变量呢,这要根是常量还是变量呢,这要根据程序设计的实际情况来确定。据程序设计的实际情况来确定。变量和常量变量和常量*变量变量v什么是变量?什么是变量?存放一项数据的内存空间,可以看做一个存储单元存放一项数据的内存空间,可以看做一个存储单元, 通过名字可以通过名字可以访问指定位置中的所存放的数据。访问指定位置中的所存放的数据。从计算机程序设计的角度上来说,一个有名称的内存位置称为变量。从计算机程序设计的角度上来说,一个有名称的内存位置称为变量。v变量的命名规则变量的命名规则变量名只能由字母、数字和下划线等组成。变量名只能由字母、数字和下划

16、线等组成。变量名的第一个字符必须是字母,最后一个字符可以是类型符。变量名的第一个字符必须是字母,最后一个字符可以是类型符。组成变量名的字符数不得超过组成变量名的字符数不得超过255个字符。个字符。不能用该语言的保留字当作变量名。不能用该语言的保留字当作变量名。v例如,例如,合法的变量名合法的变量名vCount,Chinese_Score,Age%非法的变量名非法的变量名v8a,A+B,Dim*变量命名时的注意事项:变量命名时的注意事项:取名最好使用有明确实际意义、容易记忆以及通用的变取名最好使用有明确实际意义、容易记忆以及通用的变量名,即要见名知义。比如用量名,即要见名知义。比如用sum代表求

17、和、代表求和、Student_Num代表学生学号等。代表学生学号等。变量名不宜过长,太长不便于阅读和书写。变量名不宜过长,太长不便于阅读和书写。变量名不能与过程名和符号常量名相同,更不能用该语变量名不能与过程名和符号常量名相同,更不能用该语言的关键字做变量名。言的关键字做变量名。尽量采用所用高级程序设计语言建议的变量名前缀或后尽量采用所用高级程序设计语言建议的变量名前缀或后缀的约定来命名,以便区分变量的类型,如缀的约定来命名,以便区分变量的类型,如intMax,strName。不区分字母的大小写不区分字母的大小写*变量的声明变量的声明v为什么要声明变量为什么要声明变量?声明变量就是用一个语句来

18、定义变量的类型。声明变量的语句并不声明变量就是用一个语句来定义变量的类型。声明变量的语句并不把具体数据分配给变量,而是告知变量将包含什么类型的数据。把具体数据分配给变量,而是告知变量将包含什么类型的数据。vVisual Basic中变量声明的常用语句为:中变量声明的常用语句为:1.Dim语句语句Dim As , As 例如:例如:vDim Count As IntegervDim Total As Double当然也可以用一个当然也可以用一个Dim定义多个变量。定义多个变量。用用As String可以定义变长字符串,也可以定义定长字符串。可以定义变长字符串,也可以定义定长字符串。例如:例如:v

19、Dim Sex As StringvDim Name As String *10*定义自定义类型的变量定义自定义类型的变量v如果定义自定义类型的变量,需要先定义自定义类如果定义自定义类型的变量,需要先定义自定义类型:型:Type PeopleName As String*10Sex As String*1Age As IntegerEnd Typev再定义该类型的变量:再定义该类型的变量:Dim Child As PeoplevChild中所含的中所含的Name 、Sex、Age称为称为Child的成的成员(元素)员(元素)v对记录变量中各成员的引用格式为对记录变量中各成员的引用格式为“变量变

20、量.元素元素”如如Child.Name,Child.Age。*有关变量定义的其它说明有关变量定义的其它说明v定义过的变量的初值定义过的变量的初值使用声明语句建立一个变量后,使用声明语句建立一个变量后,Visual Basic自动将数自动将数值类型的变量赋初值值类型的变量赋初值0,将字符或,将字符或Variant类型的变量赋类型的变量赋空串,将布尔型的变量赋空串,将布尔型的变量赋False。v其它变量声明语句其它变量声明语句Public: 用来在标准模块中定义全局变量或数组;用来在标准模块中定义全局变量或数组;Static: 用于在过程中定义静态变量及数组;用于在过程中定义静态变量及数组;Pri

21、vate:用来声明局部变量。用来声明局部变量。v这些声明语句将在第七章给予介绍。这些声明语句将在第七章给予介绍。*常量常量v常量的定义常量的定义常量是指在程序运行过程中始终保持不变的常数、字符常量是指在程序运行过程中始终保持不变的常数、字符串等。串等。v常量有两种表达形式常量有两种表达形式直接常量直接常量v直接常量就是在程序代码中,以直接明显的形式给出的数据。直接常量就是在程序代码中,以直接明显的形式给出的数据。 符号常量符号常量v如果在程序中多次出现同一个数据,为了改进代码的可读性和可如果在程序中多次出现同一个数据,为了改进代码的可读性和可维护性,应该使用符号常量,即给某一特定的值赋予一个名

22、字,维护性,应该使用符号常量,即给某一特定的值赋予一个名字,以后用到这个值时就用名字代表,就像数学中用以后用到这个值时就用名字代表,就像数学中用来代表来代表3.1415926、用、用e来表示来表示2.71828一样。一样。*直接常量直接常量v分类分类字符串常量字符串常量v在程序中字符串常量就是用来表示已知的、其值在程在程序中字符串常量就是用来表示已知的、其值在程序运行过程中不会改变的字符串型数据的。如:序运行过程中不会改变的字符串型数据的。如:“Result=”、“Error!”等。等。布尔常量布尔常量日期常量日期常量数值常量数值常量v这类常量在程序中的出现形式,就是数学意义上的常这类常量在程

23、序中的出现形式,就是数学意义上的常数。如果按所表示的常数的精度和形式来分,有整数、数。如果按所表示的常数的精度和形式来分,有整数、长整数、定点数和浮点数等类型。长整数、定点数和浮点数等类型。*符号常量符号常量v什么是符号常量什么是符号常量就是用一个名称来表示一个特定的值,这个值可以是数值或字符串。就是用一个名称来表示一个特定的值,这个值可以是数值或字符串。符号常量应该先定义,后使用。符号常量应该先定义,后使用。v优点:优点:一是要修改常量的值时,无须在所有出现该常量的地方一一修改,一是要修改常量的值时,无须在所有出现该常量的地方一一修改,提高了程序的可维护性;提高了程序的可维护性;二是用常量名

24、来指代常量值,增加了程序的可读性。二是用常量名来指代常量值,增加了程序的可读性。 v如何定义符号常量?如何定义符号常量?定义符号常量的一般格式为:定义符号常量的一般格式为:Const = , = v例如:例如:Const PI = 3.14定义后的定义后的PI在程序中就代表在程序中就代表3.14这个值了。例如:这个值了。例如:S=PI*R*R如果希望如果希望PI的值精度更高一点,如使用的值精度更高一点,如使用3.1415927,只要直接修改,只要直接修改符号常量符号常量PI的值即可。的值即可。*函数函数v什么是函数?什么是函数?在高级程序设计语言中,就事先设计好了许多用于进在高级程序设计语言中

25、,就事先设计好了许多用于进行特定计算的小程序,称之为函数行特定计算的小程序,称之为函数 。例如求。例如求x的正弦的正弦值等。值等。 v如何使用函数?如何使用函数?使用一个函数时,要给出函数名以及进行计算所必须使用一个函数时,要给出函数名以及进行计算所必须的参数,就能得到相应的计算结果,即函数值。的参数,就能得到相应的计算结果,即函数值。v函数的分类:函数的分类:内部函数内部函数v在高级程序设计语言中事先设计好的内部函数也称标准函数,在高级程序设计语言中事先设计好的内部函数也称标准函数,常用函数有:转换函数、数学函数、字符串函数、日期与时常用函数有:转换函数、数学函数、字符串函数、日期与时间函数

26、、随机数函数。间函数、随机数函数。用户自定义函数。用户自定义函数。v用户自定义函数是用户根据自己的计算需要而临时定义的函用户自定义函数是用户根据自己的计算需要而临时定义的函数。数。*常用内部函数常用内部函数 *常用内部函数常用内部函数 *常用内部函数常用内部函数日期和时间函数的自变量日期和时间函数的自变量Now是一个内部是一个内部变量,不需要用户定义。用它做自变量,变量,不需要用户定义。用它做自变量,可以使日期和时间函数返回当前系统的日可以使日期和时间函数返回当前系统的日期和时间。期和时间。*常用内部函数常用内部函数用用Rnd函数可以返回随机数。当一个应用程序不断地重复使用函数可以返回随机数。

27、当一个应用程序不断地重复使用随机函数时,同一序列的随机数会反复出现。用随机函数时,同一序列的随机数会反复出现。用Randomize语语句可以消除这种情况,其格式为:句可以消除这种情况,其格式为:Randomize(x)这里这里x是一个整型数,它是随机数发生器的是一个整型数,它是随机数发生器的“种子数种子数”,当种,当种子数不同时可以获得不同的随机数序列,子数不同时可以获得不同的随机数序列,x也可以省略。也可以省略。*运算符和表达式运算符和表达式v表达式由什么构成?表达式由什么构成?表达式由表达式由运算符运算符和和操作数操作数构成,运算符有单目运算符构成,运算符有单目运算符 、双目或三目运算符等

28、双目或三目运算符等 ,运算对象也称为操作数,前面介,运算对象也称为操作数,前面介绍的常量、变量和函数都可以作为运算对象(操作数)绍的常量、变量和函数都可以作为运算对象(操作数) 。v根据表达式的值的数据类型将表达式分为若干类:根据表达式的值的数据类型将表达式分为若干类:算术表达式算术表达式字符串表达式字符串表达式逻辑表达式逻辑表达式日期表达式日期表达式*算术表达式算术表达式v什么是算术表达式?什么是算术表达式?算术表达式由算术运算符、数值型常量、数值型变量、数值型函数算术表达式由算术运算符、数值型常量、数值型变量、数值型函数及括号组成。算术表达式的结果为一数值。及括号组成。算术表达式的结果为一

29、数值。vVisual Basic中的算术运算符中的算术运算符+:加法运算,如:加法运算,如3+5、a+b;-:减法运算,如:减法运算,如25-3、x-1。也称取负运算符,如。也称取负运算符,如-x、-3;*:乘法运算,相当于数学中的:乘法运算,相当于数学中的“”,如,如3*5、2*a;/:浮点除法运算,相当于数学中的:浮点除法运算,相当于数学中的“”,如,如35/7、a/b;:乘方运算,也称指数运算,如:乘方运算,也称指数运算,如(x+y)2、xa;其中,加其中,加(+)、减、减()、乘、乘(*)、浮点除、浮点除(/)、取负、取负()、乘方、乘方()运算的运算的含义与数学中的基本相同。只有取负

30、含义与数学中的基本相同。只有取负()为单目运算,其他均为双为单目运算,其他均为双目运算。目运算。*算术表达式算术表达式vVisual Basic中的算术运算符中的算术运算符:整数除法,如:整数除法,如5 3、a b;整数除法运算符整数除法运算符()执行整除运算,结果为商的整型值。如执行整除运算,结果为商的整型值。如12 5的值为的值为2,而不是,而不是2.4。整数除法的操作数一般为整型值,当操作数带有小数时,整数除法的操作数一般为整型值,当操作数带有小数时,首先四舍五入为整型或长整型数,然后进行整除运算。首先四舍五入为整型或长整型数,然后进行整除运算。其运算结果被截断为整型或长整型数,不进行四

31、舍五入其运算结果被截断为整型或长整型数,不进行四舍五入处理。例如:处理。例如:x = 53y = 25.656.5运算结果为:运算结果为:x=1,y=3。*算术表达式算术表达式vVisual Basic中的算术运算符中的算术运算符Mod:取模运算,如:取模运算,如14 Mod 3;Mod用来求余数,其结果为第一个操作数整除以第二个操作用来求余数,其结果为第一个操作数整除以第二个操作数所得的余数。例如,数所得的余数。例如,8 Mod 5的结果为的结果为3。同理,。同理,14 Mod 3的结果为的结果为2。v在书写表达式时,应注意到和数学中表达式的区别:在书写表达式时,应注意到和数学中表达式的区别

32、:(1) 每个符号占每个符号占1格,所有符号都必须一个一个并排写在同一横线上,格,所有符号都必须一个一个并排写在同一横线上,不能在右上角写幂次方或右下角写下标。因此,应该将不能在右上角写幂次方或右下角写下标。因此,应该将x2写成写成x2,x1+x2写成写成x1+x2。(2) 乘法运算符不能省略,乘法运算符不能省略,2x应该写成应该写成2*x。(3) 所有括号都用小括号,没有大括号和中括号,例如,所有括号都用小括号,没有大括号和中括号,例如,2*(3+2*(102)是正确的,而是正确的,而2*3+2*(102)是非法的。是非法的。v算术运算符的优先级算术运算符的优先级在在Visual Basic

33、中上述算术运算符按从高到低的优先顺序为:中上述算术运算符按从高到低的优先顺序为:(取负取负) *或或/ Mod +或或(减法减法)例如:例如:5*3/220+(3+52)在表达式求值时,先计算在表达式求值时,先计算(3+52)的值,这里又要先计算的值,这里又要先计算52的值,其值为的值,其值为25,则括号内的值等于,则括号内的值等于28。再计算机。再计算机5*3/2的值,为的值,为7.5。最后计算。最后计算7.520+28的值,得到整的值,得到整个表达式的值为个表达式的值为15.5。*字符串表达式字符串表达式v连接运算连接运算在在Visual Basic中,有两个字符串连接运算符,即中,有两个

34、字符串连接运算符,即“+”和和“&”。它们作用相同,因为。它们作用相同,因为“+”也可以作为加法运也可以作为加法运算符,而算符,而“&”专门作为连接符,为避免混淆,推荐使用专门作为连接符,为避免混淆,推荐使用“&”。 字符串表达式连接运算格式为:字符串表达式连接运算格式为: & 。如果要把多个字符串连接起来,每两个字符串之间都要如果要把多个字符串连接起来,每两个字符串之间都要用用“&”号分隔。例如:号分隔。例如:Please&sit down,How &are &you!表达式的结果分别为表达式的结果分别为Pleasesit down,How are you!。*日期表达式日期表达式v日期型数

35、据是一种特殊的数值型数据,它们之间只能日期型数据是一种特殊的数值型数据,它们之间只能进行加进行加(+)、减、减(-)运算。运算。(1) 两个日期型数据相减,结果是一个数值型数据两个日期型数据相减,结果是一个数值型数据(两个日期两个日期相差的天数相差的天数)。例如:。例如:#10/15/2001# - #8/15/2001#结果为数值型数据,即结果为数值型数据,即61(天天)。(2) 日期型数据可以加上日期型数据可以加上(或减去或减去)一个表示天数的数值型数一个表示天数的数值型数据,其结果仍然为一日期型数据。例如:据,其结果仍然为一日期型数据。例如:#8/15/2001# + 30#8/15/2

36、001# 30结果为日期型数据,前者为结果为日期型数据,前者为2001年年9月月14日,后者是日,后者是2001年年7月月16日。日。*关系表达式关系表达式v关系运算符关系运算符也称比较运算符,用来对两个表达式的值进行比较,比较结果是一也称比较运算符,用来对两个表达式的值进行比较,比较结果是一个布尔值:真个布尔值:真(True)或假或假(False)。v程序设计语言一般都提供了以下程序设计语言一般都提供了以下6种关系运算符:种关系运算符:v关系运算符的优先级别相同,它们低于算术运算符,但高关系运算符的优先级别相同,它们低于算术运算符,但高于逻辑运算符。于逻辑运算符。v关系运算符两侧的数据类型必

37、须完全一致。例如,下面都关系运算符两侧的数据类型必须完全一致。例如,下面都是合法的关系表达式:是合法的关系表达式:37.5, ”a”b”, (x+2)(b-2)= (大于等于大于等于)= (等于等于) (不等于不等于) (小于小于) (大于大于)*注意注意v(1) 关系运算符低于算术运算符,关系运算符低于算术运算符,如计算表达式如计算表达式“(x+2)(b2)”值与值与“x+2b-2”是一样是一样的,即同为真或同为假。的,即同为真或同为假。v(2) 数值型数据按其数值大小进行比较,日期型数据数值型数据按其数值大小进行比较,日期型数据可看成可看成“yyyymmdd”的整数形式进行数值比较,字的整

38、数形式进行数值比较,字符型数据按其符型数据按其ASCII码值进行比较。例如:码值进行比较。例如:3 #12/19/2004# 结果为结果为False”a”b” 结果为结果为True*注意注意v(3) 注意关系表达式与数学不等式的区别注意关系表达式与数学不等式的区别如数学表达式:如数学表达式:xyz,并不能写成,并不能写成x=y=z,其含义为:其含义为:x=y且且y 5 And 4 4 And 1 结果为结果为True*逻辑表达式逻辑表达式v(2) Or(或或)。对两个表达式进行比较,如果其中某一个表达式对两个表达式进行比较,如果其中某一个表达式的值为的值为True,结果为,结果为True。只有

39、两个表达式的值。只有两个表达式的值均为均为False时,结果才为时,结果才为False。例如:。例如:2 + 3 5 Or 3 8 结果为结果为FalseNot(3 8) 结果为结果为True*逻辑表达式逻辑表达式vXor(异或异或)Xor(异或异或)是指如果两个表达式同时为是指如果两个表达式同时为True或同或同时为时为False,结果为,结果为False,否则为,否则为True。vEqv(等价等价)Eqv(等价等价)与异或正好相反,即如果两个表达式与异或正好相反,即如果两个表达式同时为同时为True或同时为或同时为False,结果为,结果为True,否则,否则为为False。vImp(蕴含

40、蕴含)Imp(蕴含蕴含)则是指当第一个表达式为则是指当第一个表达式为True,且第,且第二个表达式为二个表达式为False时,结果为时,结果为False。 *逻辑表达式逻辑表达式v逻辑运算符的优先顺序为:逻辑运算符的优先顺序为:NotAndOrXorEqvImp。也就是说,。也就是说,逻辑非逻辑非(Not)级别最高,逻辑蕴含级别最高,逻辑蕴含(Imp)级别最低。级别最低。逻辑运算符的优先级别低于关系运算符,更低于逻辑运算符的优先级别低于关系运算符,更低于算术运算符。算术运算符。表3.2 逻辑运算真值表aba And ba Or bNot aa Xor ba Eqv ba Imp bTrueTr

41、ueTrueTrueFalseFalseTrueTrueTrueFalseFalseTrueFalseTrueFalseFalseFalseTrueFalseTrueTrueTrueFalseTrueFalseFalseFalseFalseTrueFalseTrueTrue*混合表达式的执行顺序混合表达式的执行顺序v一个表达式可能含有多种运算,计算机按一定的顺一个表达式可能含有多种运算,计算机按一定的顺序对表达式求值。一般规定的顺序是:序对表达式求值。一般规定的顺序是:(1)函数运算;)函数运算;(2)算术运算;)算术运算;(3)关系运算;)关系运算;(4)逻辑运算。)逻辑运算。v注意注意您可以用括号改变优先顺序,强制表达式的某些部分优您可以用括号改变优先顺序,强制表达式的某些部分优先执行;先执行;字符串连接符字符串连接符“&”优先级在所有算术运算符之后,而在优先级在所有算术运算符之后,而在关系运算符之前;关系运算符之前;指数和负号相邻时,负号优先,如对于表达式指数和负号相邻时,负号优先,如对于表达式3-2,即,即表达表达3(-2)。*习题习题*习题习题*习题习题*习题习题*习题习题

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

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