VB修炼 基础篇2
上一篇 / 下一篇 2012-05-02 23:02:06 / 个人分类:VB
- VB语法与Basic的异同
- 注释语句
- 长语句的分行
- 条件语句
- 循环语句
- 运算操作
- 数据定义与赋值
- 函数和过程
一、VB与Basic
]u:i1z%Y8^"h&pB0- VB之所以叫做“Visual Basic”就是因为它使用了Basic语言作为代码,所以它们之间有着千丝万缕的关系,如果学过Basic的话,看到VB的程序结构会感到很亲切。但VB作为新生物,也超越了Basic的限制,有了许多自己的特点:
- VB建立了一种新的变量类型――货币型变量,通过使用仅带有二位小数的货币变量,就能避免因使用实型变量而带来的数值积累误差问题。
- VB在调用函数(Function)时,必须在函数名后跟一对括号。
- VB对白兰地使用范围重新做了规范,在Basic里把隐含变量都当作全局变量,而在VB里对隐含变量都当作局部变量。
- VB里的说明语句(Declare),仅支持动态链结库(DLL)的子程序和无变量函数。
- 使用数组,必须事先用Dim或Redim进行定义。
二、注释语句51Testing软件测试网O vf3tHM!T
在使用注释语句之前必须先了解注释的作用,注释不仅仅是对程序的解释,有时它对于程序的调试也非常有用,譬如说可以利用注释屏蔽一条语句以观察变化,发现问题和错误。以后注释语句将是我们在编程里最经常用到的语句之一。
SD%L|2R/G@&h:o0在VB里,注释语句有两种,一种是用“Rem”关键字,这跟DOS里的批处理文件的用法一样,还有一种是利用单引号“’”,例如:51Testing软件测试网Xc~"?Yfd
‘Dim a As String与
S1Y"@:h~LjR2`9Q0Rem Dim a As String的作用是一致的。51Testing软件测试网.^nzn9WL`s1L
三、长语句的分行51Testing软件测试网P-s dh _1j`/yR
在比较早的版本中,因为没有象C等语言用“;”隔开语句与语句,VB的语句是必须写在一行里的,不过后来版本的VB里如许用分行符“_”把一个长语句分成若干行来存放。51Testing软件测试网.D*bPeL[
四、条件语句51Testing软件测试网RBd%l"Y
如果你学过任何一种编程的话,都会知道在程序里控制其流程的有两种语句,条件与循环,VB自然也不例外,其实不管哪种语言,条件和循环的样子都差不多,只不过各有各的规矩罢了。
l8e7@6@Mi.Q0在条件语句里,我们先来学习“If……Then……”语句。51Testing软件测试网}^f1k*y
它的一般语法是:51Testing软件测试网%_0}/v&RF/G8u*`
If <条件> Then51Testing软件测试网!L:?$v!I8E?a!V
<语句>
c8fN"x1iiQ0
FNg*tw C%c?0<语句>
7`mh(`L9jS0………End If
ZY-E^H^{0与C 语言不同,VB的条件语句更符合英语的语法,如果Then后面所跟的语句只有一条,可以写成:
!w UoZ0G3T%b)b$l0If <条件> Then <语句>51Testing软件测试网pi5T'k#pn+F}[J
而不用End If。
$pp,Ve9R1huL0有时我们还会用到
~zg(QVmc0If <条件> Then51Testing软件测试网s,JA+Z];j5x
<语句>51Testing软件测试网t2nRfiLVC
Else
QX#Z9Ay0 <语句>51Testing软件测试网qGq"hj~DO0]End If
,b3Vk AN0更可以在Else里在嵌套If语句,如:
pj2r2y6v e7f1oV^0If <条件> Then
;YY'B*nC ]'F;M0<语句>
ze)Q|^ {$]1a0
{ijzw @)q!Bq\U0Else If51Testing软件测试网*maB"Y2C ^\H.B
<语句>
Oi G l-]7z0Else
\/L0q,aV!Wgry0 <语句>End If
5YB{p7^X!T^2|2O3jJ0所有这些可以用一个表格表示:51Testing软件测试网"i4Y,q_z,A"cW:SP
图片1
g7tG9R;a0用了过多的Else后你会感到很不方便,而且程序结构也不清晰,所以大多数的语言还有Select语句帮助解决这个问题。
u5Ii*CdpJ!{7h'y:M0VB里的Select语句的格式是这样的:51Testing软件测试网^\u0V w5S%Br
Select Case <变量名>
#C[g-B%wHB0Case <情况1>51Testing软件测试网6@3u2XP}R#H6{
……51Testing软件测试网(s K&Lf5gX6i H
Case <情况2>51Testing软件测试网DG"C}-P'Aa} x
……
]4wr*Wi0`:E)W+N'P C b0Case <情况3>
e*hQ}!r[0 ……
GCg F Aj|0 ……51Testing软件测试网x;h-}{7sWN
……
,C QxBY@0Case Else51Testing软件测试网0|n{N#NvVE
……51Testing软件测试网PL%hvXTEnd Select
rf#\~Fmb]w0例如:
"@$Y w.qg2SI0Select Case a%51Testing软件测试网` {6z md;Yo0b4O
Case 151Testing软件测试网+L,uW,s _^1QQG-_"s
Print “a=1”51Testing软件测试网4P1v vZ5e.f)[1Z
Case 251Testing软件测试网/\lAX s^ I
Print “a=2”51Testing软件测试网Mw:yP}dG.g
Case Else
vh M0_!~-mT0 Print “a does not equal to 1 or 2.”51Testing软件测试网(LfH,P#F"G'aw1zEnd Select51Testing软件测试网 F"~&n,c4UY;P
五、循环语句
gB/h&c q"C051Testing软件测试网RWpd({&J%J'^循环结构是计算机语言里一种重要的结构,它的应用广泛,最简单的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件事重复指定的次数,这样就不用把要重复的语句输入多次,而通过循环结构完成,非常方便。
z]l D uG0C语言里有一个“for”循环语句,VB里也有“For”关键字,作用也差不多,只是VB的“For”语句更容易理解。它的格式是:
DA D0^_+?;V0For <循环变量>=<初赋值> To <终值> [Step <步长>]51Testing软件测试网m VY0I+q}p\'e
……51Testing软件测试网\Jg-v.]@_` l
……51Testing软件测试网6Oj:W m,L)?Next <循环变量>
ei2_lg*\`0在默认情况下,Step被设为“1”,可以省略,Step也可以设为负值,例如:
E Pb#N,W:Q#w0Dim a=0
e'w4~E2IDU4bp*U0For I=1 To 10
)HW3P YM,L0a=a+I
x'W2IK3i"`"d0Next I51Testing软件测试网4w$k+N.E7oe@)|+u P-}4a8b s
这是一个最简单的累加器的例子,把1到10累加在一起,然后赋值给“a”这样的效果和上面是一样的,只不过是倒着加罢了,请看:
9P!y?YN WG6^&\G-L0Dim a=051Testing软件测试网1|upjw:MaA
For I=10 To 1 Step –1
Iy%|FKx0a=a+I51Testing软件测试网.L*\pL(w
Next I51Testing软件测试网*o'T;d*H(~ b
While语句也是一个很常用的循环语句,它的形式很多。
A(d5sQ3rc){/H.r0
- Do While …… Loop语句
- While …… Wend 语句
- Do …… Loop While
While后面都跟逻辑条件判断,“Do While …… Loop语句”和“While …… Wend 语句”作用相似,都是先判断While后面的条件是否为“真”,如果为“真”则执行里面的语句,如果为“假”,则退出循环,循环直至条件为“假”终止。“Do …… Loop While ”与前两者的区别在于,它不管条件的真假,都会先执行“Do”后面的语句,也就是说,它至少执行语句一次。51Testing软件测试网fung(hFrwvV+~
与While用法相似的还有Until语句,它是直至条件为真则终止循环,句式把While上述三个语句的While换成Until即可,但是因为容易记混,所以我建议只用While即可。Until <条件>可以相当于While Not <条件>。
l&Hjr P ]!fg0For循环和Whlie循环应当根据适当的环境使用,它们有时也可替换。51Testing软件测试网8g6D~6^Lz9R$Q
mTg Ym9dB5j0
六、运算操作
0d+D3}J)_ go0
- 数学运算
- +:加法运算,也适合于字符串的之间的合并运算。
- -:加法运算。
- *:乘法运算。
- /:除法运算。
- \:整除运算。
- Mod:求余运算。例如:a Mod b表示a被b整除以后的余数。
- ^:幂运算。A^B表示以A为底的B次方。
- 关系运算
关系运算也称比较运算,它表示不等式的真或假,VB共提供六种运算符,分别是=(等于),>(大于),<(小于),>=(大于等于),<=(小于等于)和<>(不等于)。
&u{-A9V%[0- 逻辑运算
逻辑运算是对真或假的运算,我将列表说明:51Testing软件测试网&m2w5T,jr)s3x-|
图片251Testing软件测试网}9qW%a }
51Testing软件测试网p;rd:S;nv ~)J
-s3pL3b|s6o0{1Y0七、 数据与定义
;W!NW7H9uo$]0
本标题的内容已经在上一章向大家详述过,在这里就不再重复。51Testing软件测试网 ]r@ CAY
八、函数与过程51Testing软件测试网7n/t&n)JTzCVC9H.]
函数与过程有许多相似的地方,它们之间最大也是最本质的区别就在于,函数有一个返回值,而过程只是执行一系列动作,所以可以简单的把函数理解成为一个变量,而VB中的每个事件都是一个过程,比如Command1_Click()就是一个过程。51Testing软件测试网B'C8UG_O k)V
因为在程序设计中经常会有重复的地方,所以把它做成一个函数或一个过程,在使用时进行调用,可以节省大量的输入代码的时间,而且使用函数和过程也便于程序的结构化和修改查看。函数和过程都可以有参数,也可以没有参数。51Testing软件测试网 `sFm1@\Mo
关于函数和过程将在以后的章中配合实例讲解,请您继续关注测试思维后续VB修炼~~51Testing软件测试网,pV?p(tl b}
9Bm bJ9|bnV0
#z y0au0{|Dmu051Testing软件测试网2{9L(K m x`D5@gvZg:_O0
TAG: