第三章 程序设计基础

发布时间 : 星期三 文章第三章 程序设计基础更新完毕开始阅读

第三章 程序设计基础

本章将介绍Visual Basic中有关基本语句、程序的书写规则、变量、常数、流程控制等基本内容,之所以有编程语言之说,就是因为编程和说话一样,都是用某种语法和词汇对自己想法的表达,程序员掌握的“语法和词汇”越多,就越能够让程序完整顺畅地体现自己的想法。 3.1 赋值语句 =

对象属性或变量 = 表达式

含义:将等号右边表达式的值传送给等号左边的变量或者对象属性 如:form1.caption=”两数相乘” 3.2 程序的书写规则

1. 注释:程序员可以使用注释来说明自己编写某段代码或某个变量的目的,便于阅读理解程序。

格式1:? 注释文字 格式2:Rem 注释文字

说明:注释可以和语句在同一行并写在语句的后面,也可占据一整行。 如:?下面的语句是赋值语句和注释的示例

Form1.width=300 ?将窗体的宽度设置为300

2. 断行:将长语句分成多行。

续行符 “ _”(一个空格紧跟一条下划线)

如:strtemp=”问君归期未有期,”& _ ”巴山夜雨涨秋池。”& _ “何当共剪西窗烛,”& _ “却话巴山夜雨时。”

注意: (1) 在同一行内,续行符后面不能加注释

(2) (3)

3. 将多行语句写在一行上

一行中写下多条语句,可用“:”作为分割符。

如:Form1.width=300:temp=form1.width:form1.caption=”你好!”

3.3 变量

变量是指程序运行中其值可以变化的量。

一、变量的命名规则:

在Visual Basic中命名一个变量要遵循如下的规则,否则系统不能正确的辨识。

⑴ 必须是以字母、汉字开头的字母、汉字、数字、下划线组成的字符串,不能在变量名中出现句点”。”、空格或者嵌入下列

字符:!、#、@、$、%、&。

⑵ 变量名最长为255个字符。

⑶ 大小写字母同等对待,不能使用系统保留字

⑷ 在同一个范围内变量名必须是唯一的。

续行符不应将变量名和属性分割在两行 原则上,续行符应加在运算符的前后

第 1 页 共 26 页

二、变量的声明:

所谓声明一个变量即事先将变量的有关信息通知程序,以便系统可以确定变量的存储格式。在一般的高级语言中,使用变量

必须遵循“先声明,后使用”的原则,但在VB中,变量在使用时不一定 “先声明,后使用”,它有显式声明、隐式声明之分。

隐式声明:即不声明而直接使用,变量以Variant类型处理。

显式声明:情况一 是在程序开头加入 Option Explicit强制显式声明语句; 情况二 是不加强制显式声明语句,对变量声明。

格式: Static|Dim 变量名 [AS 类型] 其中:[AS 类型]表示可缺省,类型为数据类型 Static 定义的变量为静态变量 Dim 定义的变量为一般变量

当执行过程时,用Dim定义的变量初值为0。而用Static定义的变量除第一次调用时初值为0,以后变量不会被初始化。

如: sub form_click() dim temp as integer temp=2 ?显式声明情况二 a=4 ?隐式声明 endsub ?显式声明情况一 option explicit sub form_click() dim a as integer dim b as integer a=4 b=5

end sub

?用Static 声明变量 sub form_click () static a as integer a=a+1 print a end sub

三、变量的数据类型:

VB提供了6类12种标准数据类型,还可以由用户自定义数据类型。我们首先介绍标准数据类型:数值型、字符型、逻辑型、日期型、对象型、变体

1.数值(Numeric)数据类型

整型数、浮点数、货币型数、字节型数

(1)整型数:

是指不带小数点和指数符号的数,整型数运算速度快、精确,但表示数的范围小。 整型Integer(%): 存储长度为2个字节(16位), 数的表示范围是-32768~+32767。

长整数Long(&): 存储长度为 4个字节(32位),范围是-2147483648~2147483647。

第 2 页 共 26 页

(2)浮点数:

浮点数由三部分组成:符号、尾数(Q)以及指数(J),即±QE(或)J。指数分别用“E”表示单精度、“D”表示双精度。浮点数的符号均占1位。

单精度浮点数Single(!):以4字节形式存储(32位),可以精确到7位十进制数,而单精度数的范围如下: 负数的范围是:-3.402823E+38~-1.401298E-45。 正数的范围是:+10401298E-45~+3.402823E+38。

双精度浮点数Double(#):以8字节形式存储(64位)。可以精确到15~16位十进制数。而双精度数的范围如下: 负数的范围是:

-1.797693134862315D+308~-.9406564584112465D-324 正数的范围是:

+4.940656458412465D-324~+1.797693134862315D+308

浮点数表示的数的范围大,但有误差,在做浮点数的运算时,应尽量使每一次运算的结果都在有效位数范围内;尽量不要使两个相差很大的数值直接相加或相减。 (3)货币型数:

Currency(@):是定点数,在内存中存储为 64 位(8个字节)整型的数值形式,其小数点左边有 15 位数字,右边有 4 位数字。

范围: -922,337,203,685,477.5808~ 922,337,203,685,477.5807。

Currency 数据类型在货币计算与定点计算中很有用,因为在这种场合精度特别重要。

(4)字节型数:

Byte:是二进制数。其存储为单精度型、无符号整型、8 位(1个字节)的数值形式,范围在 0 至 255 之间。 Byte 数据类型在存储二进制数据时很有用。 2.字符(String)数据类型

String($):存放字符数据,所谓字符型数据就是用双引号括住的字符串,如:\、\Basic 欢迎你!\等。VB有两种字符串:变长字符串和定长字符串。

在字符串中每个字符占1个字节,字符数据的范围以字符串长度的大小来度量。

变长字符串所占的空间大小为10个字节加字符串,最多可包含大约20 亿(231)个字符; .....

定义格式:DIM 变量名 AS String

如:DIM strtemp AS string 定长字符串所占字节就是字符串的长度,可包含1~大约64K(216)个字符。 .....

定义格式:DIM 变量名 AS String *字符串长度 如:DIM strname AS string *8

3.逻辑(Boolean)数据类型

Boolean: 该类型变量主要用来进行逻辑判断,它的存储位数是16位。 数据只有两个值:True(真)或False(假)。

注意:在VB中,逻辑数据可以转换成整型数据。这时,True转换为-1,False转换为0;而当其他类型的数据转换成逻辑数据时,

非零数转换成True,0转换为False。

4.日期(Date)数据类型

Date: 是用来表示和存储日期和时间的数据,它是按8个字节的浮点数存储。任何字面上可被认作日期和时间的字符(除汉字外),

第 3 页 共 26 页

只要用磅号(#)括起来都可以认作为日期型数据。

如:#1 Jan,97# 、#January 1,1999# 、#1999―8―1 12:30:12PM# 日期表示的范围是:从公元100年1月1日 ~ 9999年12月31日; 时间表示的范围是:从0:00:00 ~ 23:59:59。

注意:当其他数据转换成日期型数据时,小数点左边的数值代表日期,而小数点右边的数值代表时间:0为午夜12点,0.5

为中午12点;负数代表的是1899年12月31日之前的日期和时间。

【例3.1】 下面程序在用户单击窗体后,可显示出由数据转化的日期和时间。 (教材P30例2.1)

5.对象(Object)数据类型

Object: 存储为32位(4个字节)的数值形式,作为对象的引用。利用Set语句,声明为Object的变量可以赋值为任何对象的引用。

如: Sub form_click() Dim Temp AS Object Set Temp =form1 End Sub

6.变体(Variant)数据类型

Variant:也称为万用数据类型,这是一种特殊的数据类型,它对数据的处理(即所需类型)可以根据上下文的变化而变化,除了定长的String数据及用户定义的类型之外,可以处理任何类型的数据而不必进行数据类型的转换。是对所有未定义的变量的缺省数据类型的定义。

Variant类型的数据可以根据运算的实际情况而“变体”, VB提供了一个函数VarType专门用来检测Variant中保存的数据类型,例如:VarType(123)的返回值为2,表示为整型。

VarType函数的返回值与数据类型的关系如表3.1所示。

表3.1 VarType函数数据类型检测

内部常数 vbEmpty vbNull vbInteger vbLong vbSingle vbDouble vbCurrency vbDate vbString vbObject vbError vbBoolean vbVariant vbDataObject vbByte vbArray

3.4 常数

常数是在程序运行中其值不变的量。

Visual Basic中包含三种常量:文字常量、符号常量、系统常量。

第 4 页 共 26 页

VarType 返回值 0 1 2 3 4 5 6 7 8 9 10 11 12 13 17 8192 数据类型 空(Empty) 无效(Null) 整型(Integer) 长整型(Long) 单精度(Single) 双精度型(Double) 货币型(Currency) 日期型(Date) 字符型(String) OLE自动化对象(OLE Automation Object) 错误(Error) 逻辑型(Boolean) 变体数组(Variant) 非OLE自动化对象(Non-OLE Automation Object) 字节型(Byte) 数组(Array)

联系合同范文客服:xxxxx#qq.com(#替换为@)