vb60数据类型常量变量及表达式.docx

上传人:b****5 文档编号:7629618 上传时间:2023-01-25 格式:DOCX 页数:15 大小:23.35KB
下载 相关 举报
vb60数据类型常量变量及表达式.docx_第1页
第1页 / 共15页
vb60数据类型常量变量及表达式.docx_第2页
第2页 / 共15页
vb60数据类型常量变量及表达式.docx_第3页
第3页 / 共15页
vb60数据类型常量变量及表达式.docx_第4页
第4页 / 共15页
vb60数据类型常量变量及表达式.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

vb60数据类型常量变量及表达式.docx

《vb60数据类型常量变量及表达式.docx》由会员分享,可在线阅读,更多相关《vb60数据类型常量变量及表达式.docx(15页珍藏版)》请在冰豆网上搜索。

vb60数据类型常量变量及表达式.docx

vb60数据类型常量变量及表达式

第三章数据类型、常量、变量及表达式

本章内容及要求:

1熟悉VB程序中代码和语句书写规则;

2掌握VB的数据类型;

3掌握VB的运算符和表达式的使用;

4掌握常用内部函数的使用;

本章重点:

变量和常量的定义及使用、运算符和表达式的

使用及常用内部函数的使用。

本章难点:

数据类型、内部函数。

3.1VB语言字符集及编码规则

一、VB的字符集

l字母:

大写英文字母A—Z;小写英文字母a—z。

l数字:

0一9;

l专用字符:

共27个,

二、编码规则与约定

(一)、编码规则

1.VB代码中不区分字母的大小写。

2.在同一行上可以书写多条语句,但语句间要用冒号“:

”分

隔。

3.若一个语句行不能写下全部语句,或在特别需要时,可

以换行。

换行时需在本行后加入续行符,1个空格加下划线

“_”。

4.一行最多允许255个字符。

5.注释以Rem开头,也可以使用单引号“'”,注释内容可直

接出现在语句的后面。

6.在程序转向时需用到标号,标号是以字母开始而以冒号

结束的字符串。

(二)、约定

1.为了提高程序的可读性,对于VB中的关键字其首字

母大写,其余字母小写

2.注释有利于程序的维护和调试

Rem开始或单撇‘。

例如:

’ThisisaVB

REMThisisaVB

在6.0中新增了“块注释/取消块注释”

3.通常不使用行号

4.对象名命名约定:

每个对象的名字由3个小写字母组

(指明对象的类型)和表示该对象作用的缩写字

母组成。

3.2数据类型

一.标准数据类型(课本P11)

二、自定义类型

在模块级别中使用,用于定义包含一个或多个元素的用

户自定义的数据类型。

使用形式:

Type自定义类型名

元素名[([下标])]As类型名

元素名[([下标])]As类型名

...

EndType

说明

-----------------------Page7-----------------------

例如:

对于一个学生的“学号”、“姓名”、“性别”、“年

龄”、“入学成绩”等数据,为了处理数据的方便,常常需要

把这些数据定义成一个新的数据类型(如Student类型)。

TypeStudent

XhAsSting

XmAsString

XbAsString

NlAsInteger

ScoreAsSingle

EndType

-----------------------Page8-----------------------

3.3常量和变量

3.3.1常量

在程序运行过程中,其值不能被改变的量称为常量。

VB中有三类常量:

*普通常量

*符号常量

*系统常量。

一、普通常量

1.整型常量

(1)整型(Integer):

表示-32768至32767之间的整数

例如:

1011020

(2)长整型(Long):

表示-2,147,483,648至2,147,483,647之间的整数

例如:

长整型常数的书写:

23&

-----------------------Page9-----------------------

通常我们说的整型常量指的是十进制整数,但VB中可

以使用八进制和十六进制形式的整型常数,因此整型常数

有如下三种形式:

1)十进制整数。

如125,0,-89。

20

2)八进制整数。

以&或&O(字母O)开头的整数是八

进制整数,如&O25表示八进制整数25,即(25),等于十

8

进制数21。

3)十六进制。

以&H开头的整数是十六进制整数,如

&H25表示十六进制整数25,即(25),等于十进制数37。

16

VB中的颜色数据常常用十六进制整数表示。

-----------------------Page10-----------------------

2、实数

1)单精度实型(Single):

有效数为7位

表示-3.37E+38至3.37E+38之间的实数

2)双精度实型(Double):

有效数为15位

常量的表示:

1)十进制小数形式。

它是由正负号(+,-)、数字

(0~9)和小数点(.)或类型符号(!

、#)组成,即

±n.n,±n!

或±n#,其中n是0~9的数字。

例如0.123、.123、123.0、123!

、123#等都是十进制小

数形式。

2)指数形式。

±nE±m或±n.nE±m,±nD±m或±n.nD±m

3

例:

1.25E+3和1.25D+3相当于1250.0或者1.25×10。

-----------------------Page11-----------------------

3、字符串常量

在VB中字符串常量是用双引号“"”括起的一串字符,例

如"ABC","abcdefg","123","0","VB程序设计"等。

说明:

(1)字符串中的字符可以是所有西文字符和汉字、标点

符号等;

(2)""表示空字符串,而""表示有一个空格的字符串;

(3)若字符串中有双引号,例如ABD"XYZ,则用连续

两个双引号表示,即:

"ABD""XYZ“

4、逻辑(Boolean)数据类型

只有两个值True,或False。

将逻辑数据转换成整型时:

True为-1,False为0;其它数据转换成逻辑数据时:

非0为

True,0为False。

-----------------------Page12-----------------------

5、日期常量

日期(Date)型数据按8字节的浮点数来存储,表示日期

范围从公元100年1月1日~9999年12月31日,而时间范围从

0:

00:

00~23:

59:

59。

一种在字面上可被认作日期和时间的字符,只要用号码符

“#”括起来,都可以作为日期型数值常量。

例:

#09/02/99#、#January4,1989#,#2002-5-414:

30:

00

PM#都是合法的日期型常量。

说明:

当以数值表示日期数据时,整数部分代表日期,

而小数部分代表时间;例如1表示1899年12月31日。

大于1的

整数表示该日期以后的日期,0和小于0的整数表示该日期以

前的日期。

-----------------------Page13-----------------------

二、符号常量

在程序中,某个常量多次被使用,则可以使用一个符号

来代替该常量,这样不仅在书写上方便,而且有效地改进了

程序的可读性和可维护性。

VB中使用关键字Const声明符号常量。

其格式如下:

Const常量名[As类型|类型符号]常数表达式

例如:

ConstPI#3.1415926535等价于:

ConstPIAsDouble3.1415926535

三、系统常量

VB系统提供了应用程序和控件的系统定义常数。

它们

存放于系统的对象库中,在“对象浏览器”中的VisualBasic

(VB)和VisualBasicforapplications(VBA)对象库中列

举了VisualBasic的常数

-----------------------Page14-----------------------

例如,要将文本框Text1的前景颜色设置为红色,可以

使用下面的语句:

Text1.ForeColorvbRed

这里的vbRed就是系统常量。

这比直接使用16进制数来

设置要直观得多。

又如,窗口状态属性WindowsState可取0,1,2三个值,对应

三种不同状态(参见第二章表2-2所示)。

在程序中使用语句Myform.WindowsStatevbMaxmized,

将窗口极大化,显然要比使用语句Myform.WindowsState2

易于阅读和理解。

-----------------------Page15-----------------------

3.3.2变量

一.变量和常量的命名规则

1.以字母或汉字开头,后可跟字母、数字或下划线组成,

长度小于等于40个字符;

2.不能使用VB中的关键字;

3.VB中不区分变量名的大小写.

4.为了增加程序的可读性,可在变量名前加一个缩写的前

缀来表明该变量的数据类型。

例如:

strAbc,(字符串变量)iCount,(整型变

量)

dblx,(双精度变量)sYz(单精度变量)

-----------------------Page16-----------------------

二.变量声明

1.用Dim语句显式声明变量

形式:

Dim变量名[AS类型]

Dim变量名[类型符]

例DimiCountAsinteger,sumAssingle

等价于DimiCount%,sum!

2.隐式声明

VisualBasic允许用户在编写应用程序时,不声明变量

而直接使用,系统临时为新变量分配存储空间并使用,

这就是隐式声明。

所有隐式声明的变量都是Variant数据

类型。

VisualBasic根据程序中赋予变量的值来自动调整

变量的类型。

例如:

-----------------------Page17-----------------------

下面是一个很简单的程序,其使用的变量a,b,Sum都

没有事先定义。

PrivateSubForm_Click()

Sum0

a10:

b20

Suma+b

Print"Sum";Sum

EndSub

3.强制显式声明——OptionExplicit语句

良好的编程习惯都应该是“先声明变量,后使用变量”,

这样做可以提高程序的效率,同时也使程序易于调试。

VisualBasic中可以强制显式声明,可以在窗体模块、标准

模块和类模块的通用声明段中加入语句:

OptionExplicit

-----------------------Page18-----------------------

3.4运算符和表达式

一.运算符

1.算术运算符(均是双目运算,ia3)

例:

5+10mod10\9/3+2^2结果是:

10

-----------------------Page19-----------------------

2.字符串运算符与字符串表达式

字符串运算符有:

&、+。

功能是字符串连接

例如:

"ABCD"+"EFGHI"'结果为:

ABCDEFGHI

“VB”&“程序设计教程”'结果为:

VB程序设计教程

说明:

当连接符两旁的操作量都为字符串时,上述两个连接

符等价。

它们区别是:

+(连接运算):

两个操作数均应为字符串类型;

&(连接运算):

两个操作数既可为字符型也可为数值

型,当是数值型时,系统自动先将其转换为数字字符,然

后进行连接操作。

-----------------------Page20-----------------------

例:

"100"+123'结果为223

"100"+"123"'结果为100123

"Abc"+"123"'出错

"100"&123'结果为100123

100&123'结果为100123

"Abc"&"123"'结果为Abc123

"Abc"&123'结果为Abc123

注意:

使用运算符“&”时,变量与运算符“&”之间应加

一个空格。

这是因为符号“&”还是长整型的类型定义符,如

果变量与符号“&”接在一起,VB系统先把它作为类型定义符

处理,因而就会出现语法错误。

-----------------------Page21-----------------------

3.4.3关系运算符与关系表达式

关系运算符都是双目运算,是用来比较两个运算量之间

的关系,关系表达式的运算结果为逻辑量。

若关系成立,结

果为True,若关系不成立,结果为False。

VB中的关系运算符如下表所示。

运算符含义优先级实例结果

<小于所有关系运算15+10<20False

<小于或等于优先级相同。

10<20True

低于算术运算

>大于的加“+”,减10>20False

>大于或等于“-”运算,高于"This">"That"True

逻辑非“Not”

等于"This""That"False

运算。

<>不等于"This"<>"That"True

Like字符串匹配"This"Like"*is"True

Is对象比较

-----------------------Page22-----------------------

关系运算的规则如下:

(1)当两个操作式均为数值型,按数值大小比较。

(2)字符串比较,则按字符的ASCII码值从左到右一一比较,

直到出现不同的字符为止.。

例:

"ABCDE">"ABRA"结果为False

(3)数值型与可转换为数值型的数据比较,

如:

29>"189",按数值比较,结果为False。

(4)数值型与不能转换成数值型的字符型比较,

如:

77>"sdcd",不能比较,系统出错。

(5)“Like”运算符是VB6.0新增加的。

其使用格式为:

str1Likestr2

-----------------------Page23-----------------------

3.4.4逻辑运算符与逻辑表达式

Not逻辑非为单目运算符(要求一个操作数),其它为双

目运算符。

条件表达式1And条件表达式2条件表达式均为T结果为T

条件表达式1Or条件表达式2条件表达式有一个T结果为T

-----------------------Page24-----------------------

说明:

(1)逻辑运算符的优先级不相同,Not(逻辑非)最高,

但它低于关系运算,Imp(逻辑蕴含)最低。

(2)VB中常用的逻辑运算符是Not、And和Or。

它们用于

将多个关系表达式进行逻辑判断。

例如,数学上表示某个数在某个区域时用表达式:

10≤

X<20,用VB程序中应写成:

X>10AndX<20

(3)参与逻辑运算的量一般都应是逻辑型数据,如果参与

逻辑运算的两操作数是数值量,则以数值的二进制值逐位

进行逻辑运算(0当False,1当True)。

关系表达式与逻辑表达式常常用在条件语句与循环语

句中,作为条件控制程序的流程走向。

-----------------------Page25-----------------------

4.4.5日期型表达式

日期型数据是一种特殊的数值型数据,只能有下面3种情况:

1.一个日期型数据可以相减:

DateB-DateA

结果是一个数值型整数(两个日期相差的天数)。

例如:

#05/08/2002#-#05/01/2002#其结果为数值:

7

2.一个日期型数据(DateA)与一数值数据(N)可作加法

运算:

DateA+N

其结果仍是一个日期型数据。

例如:

#05/01/2002#+7其结果为日期型数据:

#05/08/2002#

3.一个日期型数据(DateA)与一数值数据(N)可作减法

运算:

DateA-N

其结果仍是一个日期型数据。

例如:

#05/08/2002#-7

其结果为日期型数据:

#05/01/2002#

-----------------------Page26-----------------------

3.4.6运算符的执行顺序

表达式中出现了多种不同类型的运算符时,其运算符优先

级如下:

算术运算符>字符运算符>关系运算符>逻辑运算

说明:

1.当一个表达式中出现多种运算符时,首先进行算术运

算符,接着处理字符串连接运算符,然后处理比较运算

符,最后处理逻辑运算符,在各类运算中再按照相应的优

先次序进行。

2.可以用括号改变优先顺序,强令表达式的某些部分

优先运行。

括号内的运算总是优先于括号外的运算。

对于

多重括号,总是由内到外。

-----------------------Page27-----------------------

3.表达式的书写中需注意的问题

(1)运算符不能相邻。

例a+-b是错误的。

(2)乘号不能省略。

例x乘以y应写成:

x*y

(3)括号必须成对出现,均使用圆括号。

(4)表达式从左到右在同一基准并排书写,不能出现上下

(5)要注意各种运算符的优先级别,为保持运算顺序,在

写VB表达式时需要适当添加括号(),若用到库函数必须按

库函要求书写。

如:

(b-sqr(b*b-4*a*c))/(2*a)

(a+b)/(a-b)

-----------------------Page28-----------------------

3.5常用内部函数

VB提供了上百种内部函数(库函数),要求掌握这些常用

函数的功能及使用。

调用方法:

函数名(参数列表)有参函数

函数名无参函数

说明:

(1)使用库函数要注意参数的个数及其参数的数据类型

(2)要注意函数的定义域(自变量或参数的取值范围)

例如:

sqr(x)要求:

x>0

(3)要注意函数的值域。

如:

exp(23773)的值就超出实数在计算机中的表示范围。

-----------------------Page29-----------------------

1.数学函数

常用的数学函数见表3-8所示

Abs(N)Cos(N)Sin(N)Exp(N)

Log(N)Sqr(N)Rnd[(N)]Sgn(N)

说明:

(1)在三角函数中的自变量是以弧度为单位。

如:

sin300sin(3.14159/180*30)

(2)Rnd函数返回0~1(包括0和不包括1)之间的双精度随

机数。

若要产生1-100的随机整数:

Int(Rnd*100)+1

提问:

怎样产生[N,M]区间的随机数?

-----------------------Page30-----------------------

2.转换函数

常用的转换函数见表3-9所示

说明:

(1)要区别两个取整函数int()和fix()

Fix(N)为截断取整,即去掉小数后的数。

Int(N)不大于N的最大整数。

N>0与int(N)相同,当N<0时,int(N)与fix(N)-1相等。

例如:

Fix(9.59)9,Int(9.59)9

Fix(-9.59)-9,Int(-9.59)-10

思考:

如何实现四舍五入取整?

(2)Asc("Abcd")值为:

65(只取首字母的Ascii值)

(3)Val("abc123")值为:

0,Val("1.2sa10")值为1.2

注意:

Val()函数只将最前面的数字字符转换为数值。

-----------------------Page31-----------------------

3.字符串操作函数

常用的字符串函数见表3-10

说明:

如果返回是字符型,则函数后有“$”字符。

当然一般也可

以不写,习惯都写上。

例如:

len("Thisisabook!

")15

Left$("ABCDEFG",3)"ABC"

Mid$("ABCDEFG",2,3)"BCD"

InStr(2,“ABCDEFGEF”,“EF”)5(第一次出现

的位置)

-----------------------Page32-----------------------

4.日期、时间函数

常用的日期时间函数见表3-11

掌握:

Time()Date()Now

Yrar()Month()Day()

5.格式输出函数

使用格式

Format$(表达式[,“格式字符串”])

功能:

按用户指定格式返回表达式,常常用在print方

法中。

使用形式:

printFormat$(表达式[,“格式字符串”

])

表达式:

可以是数值、日期或字符串型表达式。

格式字符串:

表示输出表达式时采用的输出格式。

同数据类型所采用的格式字符串是不同的。

-----------------------Page33-----------------------

(1)数值型数据格式化(见表3-12)

注意:

对于符号:

0与#,当数值的实际位数比格

式控制给定的位数多时,系统将按四舍五入返回给定的位

数。

如:

Format(3.14159,“###.###”),其值为3.142

(2)日期和时间型数据格式化(见表3-13)

缺省日期格式为:

“mm/dd/yy”,时间格式:

“hh:

mm:

ss”

(3)字符串类型数据格式化(见表3-14)

-----------------------Page34-----------------------

3.5.6其它函数

除上面常用的四类函数,VB中还有测试函数(见表

3-15)、与文件操作有关的函数(见表3-16)及其它函数

(见表3-17)

本章小结:

作业:

-----------------------Page35-----------------------

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1