第3章 Visual Basic程序设计基础

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

1.算术运算符

算术运算符用来对数值型数据执行简单的算术运算。在Visual Basic中共有8种算术运算符,如表3-2所示。

表3-2算术运算符

运算符 / \ Mod + 含义 指数 取负 乘 除 整除 求余 加 减 表 达 式 举 例 举 例 4^3 -10 8*2 7/2 7\2 7 Mod 2 10+2 7.4-3 结 果 64 -10 16 3.5 3 1 12 4.4 说 明 进行乘方运算,4^3是4 进行单目运算,10取负 整除结果取商的整数部分 结果是两个数相除后之余 “+”也可以足字符串连接符 3优先级 1 2 3 3 4 5 6 6 说明: (1)算术运算符中,除负号“-”是单目运算符外,其余都是双目运算符(要求有两个运算量)。

(2)+、-、*的概念和数学中的概念相同。 (3)除法运算有两种:

/——一般除法,运算结果一般为单精度数。如果操作数有一个为双精度数,则结果为双精度数。如:7/3=2.33333333333。

\\——整除,整数除法,结果为整数。如:7\\3=2。 (4)Mod运算符是求两数相除后的余数。例如, 22 Mod 7 '结果为2 8.6 Mod 3 '果为0 11.4 Mod 5.2 '结果为1

(5)参加整除和求余运算的运算对象一般为整型值,当运算对象中含有小数点时,此时Visual Basic会自动将操作数四舍五入为整型或长整型后再进行运算。

例如,表达式5^2Mod 5^2\\6.45的结果为1

(6)算术运算符两边的操作数应为数值型。若是数字字符或逻辑型,则自动转换为数值则再运算。

2.字符串运算符

将两个或多个字符串连接起来可以㈩字符串连接运算符“&”或“+”,生成一个新的字符串。例如,

\结果为:ABCDEFGHI

\程序设计教程\结果为:VB程序设计教程

说明:当连接符两旁的操作量都为字符串时,上述两个连接符等价。它们区别是:+(连接运算):两个操作数均应为字符串类型。

&(连接运算):两个操作数既可为字符型也可为数值型,当是数值型时.系统自动先将其转换为数字字符,然后进行连接操作。例如,

\ '结果为223 \ '结果为100123 \ '出错

\ '结果为100123

100 & 123 '结果为100123 \ '结果为Abcl23 \ '结果为Abcl23

注意:使用运算符“&”时,变量与运算符“&”之间应加一个空格。这是因为符号“&”还是长整型的类型定义符,如果变量与符号“&”连接在一起,Visual Basic系统先把它作为类型定义符处理,因而就会出现语法错误。

3.关系运算符

关系运算符都是双目运算,是用来比较两个运算量之间的关系,关系表达式的运算结果为逻辑量。若关系成立,结果为True,若关系不成立,结果为False。

Visual Basic提供的关系运算符如表3-3所示。

表3-3关系运算符 运算符 = > >= < <= <> 含义 等于 大于 小于 表达式举例 举例 \(2+3)>4 8>=(10-2) \结果 False True True True False True 说明 小写“abc”不等于大写“ABC” 先计算2+3=5,5大于4 或大于或等于都为真,8=10-2 第一个串中第一个字符是空格,空格小于“s”,所以结果为真 或小于或等于都为真,220大于110,所以为假 \不等于“y”,所以结果为真 小于等于 220<=110 不等于 \关系运算的规则如下:

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

(2)字符串比较,则按宁符的ASCII码值从左到右一一比较,直到出现不同的字符为止。例如,\,结果为False。

(3)数值型与可转换为数值型的数据比较,例如,29,\,按数们比较,结果为False。(4)数值型与不能转换成数值型的字符型比较,例如,77>\’,不能比较,系统出错。

(5)日期型数据进行比较时,首先将日期看成“yyyymmdd”的八位整数,然后再按数值进行比较。

(6)常见的字符值的大小比较关系如下:

“空格”<“0”

逻辑运算符又称为布尔运算符,用来对逻辑型数据进行运算,其结果为True或False。Visual Basic中的逻辑运算符有以下6种,如表3-4所示。

说明:

(1)各逻辑运算符的优先级不相同,逻辑运算符的优先级从高到低依次为: Not→And→Or→Xor→Eqv→Imp

(2)Visual Basic中常用的逻辑运算符是Not、And和Or。它们用于将多个关系表达式进行逻辑判断,

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

X>=10 And X<20

(3)参与逻辑运算的量一般都应是逻辑型数据,如果参与逻辑运算的两操作数是数值量,则以数值的二进制值逐位进行逻辑运算(0当False,1当True)。

表3-4逻辑运算符 运算符 Not And Or Xor Eqv Imp 含义 逻辑非 逻辑与 逻辑或 表达式举例 举例 Not(\(5>=3) And (9>5) (\结果 True 说明 \为假,再进行取反运算,所以结果为真 True 两个表达式的值都为真,结果为真 True 两个表达式的值一个为真,结果为真 True 两个表达式的值一真一假,结果为真 False 两个表达式的值一真一假,结果为假 True 第一个表达式值为真,第二个为假,结果为真 逻辑异或 (8=7) Xor (10>7) 逻辑等于 (12>8) Eqv (\逻辑蕴含 (10=10) Imp (12>22) 注意:关系表达式与逻辑表达式常常用在条件语句与循环语句中,作为条件控制程序的流程走向。

3.3.2 表达式(P54) 1.表达式的组成

表达式由常数、变量、函数、运算符及圆括号按一定规则组成。表达式通过运算后有一个结果,运算结果的类型由数据和运算符共同决定。

2.表达式的书写规则

(1)运算符不能相邻。例如,a+*b是错误的。

(2)在一个表达式中出现的括号应全部是圆括号,且必须配对使用。

(3)在一个算术表达式中,乘号*既不能省略,也不能用·代替:例xy应写成:x*y。 (4)表达式从左到右在同一基准并排书写,不能出现上下标。

(5)要注意各种运算符的优先级别,为保持运算顺序,在写Visual Basic表达式时需要适当添加括号(),若用到库函数必须按库函数要求书写。

2?b?b?4ac应写成(-b+Sqr(b*b-4*a*c))/(2*a),其中“Sqr”为求平例如,数学算式,

2a方根的函数名。

3.日期表达式

日期型表达式由日期型常数、变量、函数、算术运算符\,\和算术表达式组成。日期型数据之间只能进行加、减运算。由数字符号(#)所包围的具有有效格式的字符序列为日期文字。有效的格式包括区域设置中指定的日期格式或国际日期格式。例如,#12/9/2002#表示2002年12月9日。有两种情况:

(1)两个日期型数据相减,结果是一个数值型数据(两个日期相差的天数)。例如,#12/20/2002# - #12/10/2002#的结果为数值型数据10。

(2)一个表示天数的数值型数据与日期型数据相加、减,结果仍为日期型数据。例如,/#12/10/2002#+10的结果为日期型数据#12/20/2002#(在Visual Basic中,实际输出结果的格式与系统设置有关)。

4.表达式的优先级别

由多个运算符所组成的式子叫表达式,有运算表达式、关系表达式、字符表达式、逻辑表达式等。表达式中出现了多种不同类型的运算符时,其运算符优先级从高到低依次为:算术运算符→字符运算符→关系运算符→逻辑运算符

说明:

(1)一个表达式中出现多种运算符时,首先处理算术运算符:接着处理字符串连接运算

符:然后处理比较运算:最后处理逻辑运算符,在各类运算中再按照相应的优先次序进行。

(2)可以用括号改变优先顺序,强令表达式的某些部分优先运行。括号内的运算总是优先于括号外的运算。对于多重括号,总是由内到外。

3.4 常用内部函数(P55)

函数的概念与一般数学中函数的概念没有什么根本区别。函数是一种特定的运算,在程序中要使用一个函数时,只要给出函数名及参数,就能得到它的函数值。

在Visual Basic中,有两类函数:内部函数和用户定义函数。用户定义函数是用户根据需要定义的函数(详见过程与函数一章)。内部函数也称标准函数,Visual Basic本身提供了大量的内部函数。在这些函数中,有些是通用的,有些与某种操作有关。这些函数可分为:转换函数、数学函数、字符串函数、日期与时间函数、随机函数。

3.4.1 数学函数

数学函数用于各种数学运算,包括三角函数、求平方根、绝对值及对数、指数函数等。常用数学函数如表3-5所示,其中参数N、N1、N2表示有效的数值表达式。

表3-5常用数学函数

函数名 Abs(N) Sin(N) Cos(N) Tan(N) Atn(N) Exp(N) Log(N) Rnd[(N)] Sgn(N) Sqr(N) Fix(N) Int(N) 含义 取绝对值 正弦函数 余弦函数 正切函数 返回用弧度表示的反正切值 E为底的指数函数,即eN 以e为底N的自然对数 符号函数 平方根 取整 取小于或等于N的最大整数 实例 Abs(-3.5) Sin(0) Cos(0) Tan(0) Atn(1) Exp(3) Log(10) Sgn(-3.5) Sqr(9) Fix(-3.5) Int(-3.5) Int(3.5) 0 1 0 0.785398163397448 20.086 2.3 0~1之间的随机数 -1 3 -3 -4 3 结果 3.5 产生大于等于0小于1的随机数 Rnd Round(N1[,N2]) 四舍五入(若省略N2则取整) Oct[S](N) Hex[$](N) 十进制转换成八进制 十进制转换成十六进制 Round(88.48,1) 88.5 Round(88.43) 88 Oct[$](100) Hex(100) \64

1.绝对值函数Abs(N)

此函数可用来求N的绝对值。例如,当N=123时,Abs(N)=123;当N=-123时,Abs(N)=123。 2.三角函数

Visual Basic提供了四个三角函数: Sin(N):返回自变量N的正弦值, Cos(N):返回自变量N的余弦值。 Tan(N):返回自变量N的正切值。

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