第03章VisualBasic数据类型及其运算剖析Word格式.docx

上传人:b****1 文档编号:885508 上传时间:2023-04-29 格式:DOCX 页数:26 大小:26.43KB
下载 相关 举报
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第1页
第1页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第2页
第2页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第3页
第3页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第4页
第4页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第5页
第5页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第6页
第6页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第7页
第7页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第8页
第8页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第9页
第9页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第10页
第10页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第11页
第11页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第12页
第12页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第13页
第13页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第14页
第14页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第15页
第15页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第16页
第16页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第17页
第17页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第18页
第18页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第19页
第19页 / 共26页
第03章VisualBasic数据类型及其运算剖析Word格式.docx_第20页
第20页 / 共26页
亲,该文档总共26页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

第03章VisualBasic数据类型及其运算剖析Word格式.docx

《第03章VisualBasic数据类型及其运算剖析Word格式.docx》由会员分享,可在线阅读,更多相关《第03章VisualBasic数据类型及其运算剖析Word格式.docx(26页珍藏版)》请在冰点文库上搜索。

第03章VisualBasic数据类型及其运算剖析Word格式.docx

(3)不能超过255个字符

(4)不能关键字同名

3.2.2定义变量

OptionExplicit语句:

强制性规定变量“先定义后使用”

语句:

Dim变量名[As数据类型名][,变量名[As数据类型名]……

注:

(1)设置适当的变量类型

(2)每个变量都要指明数据类型,否则为变体类型

(3)DimiAsInteger等价于dimi%

(4)Dims1AsString长度可变

Dims2AsString*50长度固定

3.2.3使用变量

1.赋值与取值

(1)变量赋值

用赋值语句

(2)引用变量的值

将变量名写在表达式中

给其他变量或属性赋值

用作过程或函数的参数

(3)变量的作用域限定了变量的有效作用区间

(4)对于同名变量,作用域小的变量屏蔽作用域大的变量

(5)访问另一个模块中定义的全局变量,应在变量名前加模块名

Form2.inti。

访问本模块或标准模块中的全局变量,不必加模块名

2.变量的默认值

(1)数值型0

(2)逻辑型False

(3)日期时间型#0:

00#

(4)变长字符串变量为空字符串

(5)定长字符串变量为指定数量的空格组成的字符串

(6)对象型变量为Nothing

(7)变体类型变量为Empty

3.数据类型转换

(1)数据类型转换发生的情况

为变量和属性赋值时

计算表达式时

参数传递时

(2)隐式类型转换的规则

整型→浮点型:

存储格式转换,数值的大小不变

浮点型→整型:

小数部分“四舍五入”为整数

数值→字符串:

所有的数值都可以转换为字符串

字符串→数值:

只有字符串内容全部是数值才可转换

数值型→逻辑型:

0转换为False,非0转换为True

逻辑型→数值型:

False转换为0,True转换为-1

逻辑型→字节型:

False转换为0,True转换为255

日期时间→数值:

日期转换为整数,值为此日期距1899年12月30日的天数

时间转换为小数,从零时到该时间占一整天的比例

数值→日期时间:

是日期时间→数值的逆过程

逻辑型→字符串:

True和False分别转换为"

True"

和"

False"

字符串→逻辑型:

"

转换为True和False

日期时间→字符串:

按日期的短格式转换为相应的字符串

s2=#2/1/20108:

20:

字符串变量s2的值为"

2010-2-18:

00"

字符串→日期时间:

d2="

2/1/20108:

00AM"

日期时间变量d2的值为#2010-2-18:

00AM#

(3)不能进行类型转换的情况

包含非数值字符的字符串向数值型转换

非"

的字符串向逻辑型转换

非日期时间内容的字符串向日期时间型转换

转换时超出目标类型的表示范围

3.2.4文字常量

1.数值型常量

(1)字节型、整型、长整型常量

十进制:

0~9

624、-36、+256

十六进制:

0~9、a~f(或A~F)

以&

H(或&

h)为前缀

&

H76、&

H2F8

八进制:

0~7

O(大写字母O)或仅以&

为前缀

O347、&

O1235

(2)浮点型常量(单精度、双精度)

日常记法:

整数部分或小数部分为0,可省略,但要保留小数点。

3.14159、0.23、24.、-.5

指数记法:

用mEn来表示m×

10n

m是一个整型常量或浮点型常量

n必须是整型常量

E可用e、D、d代替

1E2表示1×

102

2.字符串型常量

必须用英文的双引号将实际的字符括起来

空格也是合法的字符

如果两个双引号之间没有任何字符,表示一个空字符串

Hello"

计算机"

VisualBasic程序"

¥25.00"

3.布尔型常量

只有两个值:

True和False

4.日期时间型常量

用“#”作为定界符

可以表示日期、时间、日期及时间

#1/2/2010#

#2010-1-2#

#January2,2010#

#12:

00PM#

#1/2/20108:

注:

可在常量后面加上类型说明符

%整型

长整型

!

单精度浮点数

#双精度浮点数

@货币型

$字符串型

3.2.5符号常量

先定义后使用

一次定义多次使用

作用域由定义时使用的语句和位置决定

1.符号常量的定义

语法格式:

Const常量名[As数据类型名]=表达式[,常量名[As数据类型名]=表达式]……

ConstPi=3.14159

2.符号常量的使用

(1)注意作用域

(2)在声明符号常量时,省略“As数据类型名”部分,可以在常量后面加上类型说明符。

ConstONE&

=1

ConstTWO#=1

(3)在程序中引用符号常量时,通常省略类型说明符。

可以通过名字ONE和TWO引用上面声明的符号常量

(4)类型说明符不是符号常量的一部分。

假定声明了

ConstNum=45

则Num!

、Num%、Num&

、Num@不能再用作变量名或常量名。

(5)VB中有大量预定义的符号常量,一般以“vb”为前缀。

vbOKOnly

3.3常用内部函数

由VB系统本身提供的、用户可以直接使用的函数叫内部函数(或库函数、标准函数)

可以使用立即窗口进行快速测试

3.3.1显式数据类型转换函数

函数

功能

Cint(x)

把x的小数部分四舍五入,转换为整数

CLng(x)

把x的小数部分四舍五入转换为长整型数

CSng(x)

把x值转换为单精度数

CDbl(x)

把x的值转换为双精度数

Ccur(x)

把x的值转换为货币类型值,

小数部分最多保留4位且自动四舍五入

CByte(x)

把x值转换为字节型

CStr(x)

把x值转换为字符串型

CBool(x)

把x值转换为布尔型

CDate(x)

把x值转换为日期时间型

CVar(x)

把x值转换为变体类型值

3.3.2数学函数

Sin(x)

返回自变量x的正弦值,x为弧度值

Cos(x)

返回自变量x的余弦值,x为弧度值

Tan(x)

返回自变量x的正切值,x为弧度值

Atn(x)

返回自变量x的反正切值,函数值为弧度值

Abs(x)

返回自变量x的绝对值

Sgn(x)

返回自变量x的符号:

当x为负数时,函数返回-1

当x为0时,函数返回0

当x为正数时,函数返回1

Sqr(x)

返回自变量x的算术平方根,x必须大于或等于0,Double型

Exp(x)

返回以e为底,以x为指数的值,即求e的x次方,Double型

Log(x)

返回以e为底x的自然对数值,返回值为Double型

Int(x)

求不大于自变量x的最大整数

Fix(x)

去掉一个浮点数的小数部分,保留其整数部分(截尾)

Rnd(x)

产生一个0~1之间的单精度随机数

1度=π/180=3.14159/180弧度

Randomize[(x)]

设置随机数种子

省略x,则以系统时钟返回值作为“种子数”

Int(8.78)的值为8

Int(-5.68)的值为-6

Int(6.7436*1000+0.5)/1000的值为6.744(在小数点后第四位四舍五入)

Fix(5.69)的值为5

Fix(-5.88)的值为-5

Int(Rnd*(B-A+1)+A)的功能是产生[A,B]闭区间内的随机整数

3.3.3字符串型和数值型转换函数

 

Hex$(x)或Hex(x)

把一个十进制数转换为十六进制数,转换结果为一字符串

Oct$(x)或Oct(x)

把一个十进制数转换为八进制数,转换结果为一字符串

Asc(x$)

返回字符串x$中的第一个字符的ASCII码,转换结果是一个数

Chr$(x)或Chr(x)

把数值型x的值作为ASCII值,转换为此ASCII码对应的字符

Str$(x)或Str(x)

把数值型x的值转换为一个字符串。

当X为正数时,结果的第一个字符为空格。

Val(x$)

把字符串x左边有效数值转化为数值,若左边无有效数值,则返回结果为0

有效数值包括0~9、正负号、小数点和组成浮点常量的E、e、D、d。

转换时忽略空格、制表符与换行符

Hex(30)的值为"

1E"

Oct(30)的值为"

36"

Asc("

abce"

)的值为97

Chr(97)的值为"

a"

Str(345)的值为"

345"

Val("

23.5.3abe"

)的值为23.5

w23.5.3abe"

)的值为0

2E3.5.3abe"

)的值为2000(相当于2E3)

函数名后面的“$”表示函数的返回值为字符串型,可省略。

3.3.4日期时间函数

类型

系统日期时间

Date

返回系统当前的日期

Time

返回系统当前的时间

Now

返回系统当前的日期和时间

日期

Day(date)

返回date的日

Weekday(date)

返回date的星期

Month(date)

返回date的月份

Year(date)

返回date的年份

DateSerial(year,month,day)

返回一个日期值

时间

Hour(date)

返回date的小时(0-23)

Minute(date)

返回date的分钟(0-59)

Second(date)

返回date的秒(0-59)

TimeValue(date)

返回date的时间部分

TimeSerial(hour,minute,secong)

返回一个时间值

3.3.5字符串处理函数

1.删除空白字符函数

LTrim$(字符串):

去掉左边的空白字符

RTrim$(字符串):

掉字右边的空白字符

Trim$(字符串):

去掉左右两边的空白字符

a$="

Good"

LTrim(a$)的结果为"

Good"

RTrim(a$)的结果为"

Good"

Trim(a$)的结果为"

Good"

2.字符串截取函数

(1)Left$(字符串,字符个数)

返回“字符串”最左边的长度为“字符个数”的子字符串

(2)Right$(字符串,字符个数)

返回“字符串”最右边的长度为“字符个数”的子字符串

(3)Mid$(字符串,起始位置,[字符个数])

返回一个子字符串。

如果起始位置大于字符串长度,返回空字符串

若省略“字符个数”,则从起始位置到字符串的结尾

3.字符串长度测试函数

Len(字符串)

返回字符串的长度

4.String$函数

格式:

String$(n,ASCII码)或String$(n,字符串)

功能:

返回由n个指定字符组成的字符串。

例如:

x=String$(5,65)’x="

AAAAA"

x=String$(5,"

abc"

)’x="

aaaaa"

5.字母大小写转换

LCase$(字符串)不论字符串中的字符为大写还是小写,一律输出为小写

UCase$(字符串)不论字符串中的字符为大写还是小写,一律输出为大写

6.字符串匹配函数

InStr([起始位置,]"

字符串1"

,"

字符串2"

[,比较模式])

在字符串1中查找字符串2

说明:

(1)如果找到,则返回字符串2在字符串1中第一次出现的起始位置

如果找不到,返回0

若起始位置省略,则从字符串1的起始位置开始查找

(2)比较模式为1时,不区分大小写

比较模式为0时,区分大小写

默认设置为0

(3)若指定了比较模式,则必须指定起始位置

3.3.6格式输出函数

1.Tab函数

与Print方法配合使用

Tab(n);

[输出项];

把光标移到由参数n指定的位置,从该位置输出数据

参数:

n为数值表达式,其值为一整数

PrintTab(5);

"

姓名"

;

Tab(25);

年龄"

Tab(40);

职称"

2.Spc函数

Spc(n)

Spc函数和输出项之间用分号间隔,确定两个输出项之间的间隔

n为数值表达式,其值为0~32767之间的整数

Debug.Print"

吉林师范大学"

Spc(10);

计算机学院"

3.Space$函数

Space$(n)

返回n个空格

n为数值表达式,其值为非负数

&

Space(5+2)&

网络实验室"

3.3.7InputBox函数

1.函数的格式

InputBox(PROMPT[,TITLE][,DEFAULT][,XPOS,YPOS][,HELPFILE,CONTEXT])

2.函数的参数

PROMPT:

字符串,长度不超过1024个字符,显示在对话框内作为提示信息。

TITLE:

字符串,对话框的标题。

DEFAULT:

字符串,输入区的缺省信息。

XPOS、YPOS:

两个整数,单位为twip,用来确定对话框在屏幕中的显示位置。

HELPFILE:

帮助文件的名称

CONTEXT:

相关帮助主题的目录号

3.应用举例

编写程序,完成对话框设计

PrivateSubForm_Click()

DimcAsString,m1AsString,m2AsString

DimMsgAsString,TitleAsString,nAsString

c=Chr(13)+Chr(10)

m1="

PleaseInputName:

m2$="

PleaseEnterOrClickOKafterInput"

Msg=m1+c+m2

Title="

Register"

n=InputBox(Msg,Title,"

Marry"

Printn

EndSub

4.几点说明

(1)如果要求对话框内提示信息换行,则需要插入回车换行操作

(2)InputBox函数的返回值是一个字符串

(3)单击OK按钮或按回车键,表明对输入进行确认,返回输入的数据

单击Cancel按钮或按Esc键,表明取消输入,返回一个空字符串

(4)每次执行InputBox函数只能输入一个值

(5)InputBox与InputBox$等价

3.3.8MsgBox函数

1.MsgBox函数的格式

MsgBox(MESSAGE[,TYPE][,TITLE][,HELPFILE,CONTEXT])

MESSAGE:

长度不超过1024个字符的字符串

TYPE:

是一个符号常量或整数值,用来控制对话框内显示的图标和按钮的种类及数量

表3.6TYPE参数的常见取值

类型

符号常量

数值

功能

按钮的类型

和数量

vbOKCancel

vbAbortRetryIgnore

vbYesNoCancel

vbYesNo

vbRetryCancel

1

2

3

4

5

只显示“确定”按钮

显示“确定”和“取消”按钮

显示“终止”、“重试”和“忽略”按钮

显示“是”、“否”和“取消”按钮

显示“是”和“否”按钮

显示“重试”和“取消”按钮

图标类型

vbCritical

vbQuestion

vbExclamation

vbInformation

16

32

48

64

显示暂停图标(x)

显示疑问图标(?

显示警告图标(!

显示忽略图标(i)

默认活动按钮

vbDefaultButton1

VbDefaultButton2

VbDefaultButton3

VbDefaultButton4

256

512

768

第一个按钮是默认值

第二个按钮是默认值

第三个按钮是默认值

第四个按钮是默认值

强制返回

VbApplicationModal

vbSystemModal

4096

应用程序强制返回

系统强制返回

TYPE参数的值由表中四种类型的数值相加产生,通常只用前三类数值。

36=4+32+0

默认按钮为“是”

TYPE参数还可以用符号常量表示,以提高程序的可读性。

字符串,作为对话框的标题。

3.函数的返回值

MsgBox函数的返回值是一个整数,该整数与所选择的按钮有关:

1或vbOK,则表明用户选择了“确定”按钮

2或vbCancel,“取消”

3或vbAbort,“终止”

4或vbRetry,“重试”

5或vbIgnore,“忽略”

6或vbYes,“是”

7或vbNo,“否”

4.应用举例

编写程序,用MsgBox函数完成对话框设计。

DimmAsString,tAsString,nAsInteger

m="

请确认该信息是否正确"

t="

信息确认"

n=MsgBox(m,19,t)

5.几点说明

(1)在信息框内标有虚线框的按钮是当前活动按钮,按回车键,可完成相应的选择操作。

(2)需要插入回车换行操作在提示信息中实现换行。

(3)根据该返回值决定后续操作。

(4)由MsgBox函数产生的对话框属于“模态窗口”(ModalWindow)。

出现该对话框时,要求用户必须做出选择,否则不能执行任何其他操作。

(5)MsgBox函数也可以写成语句的形式,即MsgBox语句。

功能相同,只是没有返回值。

3.4表达式

运算符:

表示某种运算的符号

运算量:

被运算的数据(常量、变量、函数)

表达式:

由运算符和运算量组成的式子

3.4.1算术表达式

1.算术运算符

运算符

名称

表达式例子

说明

+

a+b

-

a-b

*

a*b

/

a/b

\

整除

a\b

只用于整数

Mod

求余(取模)

aModb

^

乘方

a^b

取负

-a

参加整除、求余运算的对象含有小数点时,自动四舍五入为整数后再进行运算。

17.8\5.2,转化为18\5,结果为3。

11.6mod5.1,转化为12对5求余,结果为2。

2.算术表达式

算术表达式:

由算术运算符连接的数值型常量、变量或函数构成的有意义的式子。

(1)所有符号都不能写成上标或下标的形式

(2)不能省略乘号

(3)所有括号一律写成圆括号,左右成对

(4)数学中的π要写成3.14

3.算术运算符的优先级

指数运算符(^)

取负(-)

乘(*)、浮点除(/)

整除(\)

取模(Mod)

加(+)、减(-)

-3^2=-9

(3+2)*7=35

14/5*2=5.6

14\5*2=1

1+((2+3)*2)*2=21

3.4.2字符串表达式

1.字符串连接运算符

、+

Visual"

Basic"

+"

的结果为"

VisualBasic"

123"

的运算结果是"

abc123"

“&

”能自动将非字符串类型的数据转换成字符串后再进行连接运算,而“+”则不能自动转换。

+123结果出错,错误提示为“类型不匹配”

123的运算结果是"

12"

+"

12123"

+123的运算结果是135(先将字符串转换为整数),而不"

2.字符串表达式

字符串表达式:

字符串运算符将字符串常量、字符串变量、字符串函数连接形成的一个有意义的式子。

xyz"

Left("

2)

3.字符串连接运算符的优先级

”的优先级低于所有的算术运算符

3.4.3关系表达式

1.关系运算符

关系运算符(比较运算符)用来对两个表达式的值进行比较,结果为逻辑值。

关系运算符:

=(等于)

>

(大于)

<

(小于)

或>

(不等于)

=(小于等于)

=(大于等于)

2.关系表达式

关系表达式:

用关系运算符将算术表达

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

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2