VB修炼 基础篇2
上一篇 / 下一篇 2012-05-02 23:02:06 / 个人分类:VB
- VB语法与Basic的异同
- 注释语句
- 长语句的分行
- 条件语句
- 循环语句
- 运算操作
- 数据定义与赋值
- 函数和过程
一、VB与Basic51Testing软件测试网DLi_Lf`
- VB之所以叫做“Visual Basic”就是因为它使用了Basic语言作为代码,所以它们之间有着千丝万缕的关系,如果学过Basic的话,看到VB的程序结构会感到很亲切。但VB作为新生物,也超越了Basic的限制,有了许多自己的特点:
- VB建立了一种新的变量类型――货币型变量,通过使用仅带有二位小数的货币变量,就能避免因使用实型变量而带来的数值积累误差问题。
- VB在调用函数(Function)时,必须在函数名后跟一对括号。
- VB对白兰地使用范围重新做了规范,在Basic里把隐含变量都当作全局变量,而在VB里对隐含变量都当作局部变量。
- VB里的说明语句(Declare),仅支持动态链结库(DLL)的子程序和无变量函数。
- 使用数组,必须事先用Dim或Redim进行定义。
二、注释语句
P [q:M%sM+nl0在使用注释语句之前必须先了解注释的作用,注释不仅仅是对程序的解释,有时它对于程序的调试也非常有用,譬如说可以利用注释屏蔽一条语句以观察变化,发现问题和错误。以后注释语句将是我们在编程里最经常用到的语句之一。51Testing软件测试网%f@&mP {Eq
在VB里,注释语句有两种,一种是用“Rem”关键字,这跟DOS里的批处理文件的用法一样,还有一种是利用单引号“’”,例如:51Testing软件测试网 Wj4rN \^$O q,^a1{v
‘Dim a As String与51Testing软件测试网a5j3}{-J!c c0{
Rem Dim a As String的作用是一致的。51Testing软件测试网DmT%su&wdJ,M
三、长语句的分行51Testing软件测试网#tA5|'Tm5L
在比较早的版本中,因为没有象C等语言用“;”隔开语句与语句,VB的语句是必须写在一行里的,不过后来版本的VB里如许用分行符“_”把一个长语句分成若干行来存放。51Testing软件测试网z gk)Y6T
四、条件语句
&OY%X"j `/z2l0如果你学过任何一种编程的话,都会知道在程序里控制其流程的有两种语句,条件与循环,VB自然也不例外,其实不管哪种语言,条件和循环的样子都差不多,只不过各有各的规矩罢了。51Testing软件测试网.G/T8UC\{ F9q C/Cc
在条件语句里,我们先来学习“If……Then……”语句。51Testing软件测试网rq,s#_5V^x
它的一般语法是:
9O"J0J7i$ED:J"G0If <条件> Then51Testing软件测试网}^0p0q1yjSo%z
<语句>
&}:IDi`\0
A\"Mk!X2us2j0<语句>
i.F,|K jif _z N0………End If
.fafK mGiW6@)s0与C 语言不同,VB的条件语句更符合英语的语法,如果Then后面所跟的语句只有一条,可以写成:
Y\2g5T9E$L2[0If <条件> Then <语句>
S,r;T*{Yh0而不用End If。51Testing软件测试网9U;LE"i@
有时我们还会用到
p LO1}5IK!fR[8l0eF0If <条件> Then
$g)v1X*jlf0<语句>51Testing软件测试网n5mm/BQg
Else
` Fx T1r\0 <语句>51Testing软件测试网}@1M*y7X:DA%eEnd If
UXzv O0\W5b)i*h`0更可以在Else里在嵌套If语句,如:51Testing软件测试网J\#s?|b'x7g*F
If <条件> Then51Testing软件测试网b3c'?k _[?
<语句>51Testing软件测试网ud&VoRlMi
_:kojb'n.eA0[0
Else If
W C ~7Cj'j!n}T0 <语句>51Testing软件测试网#T tx:Y8{!n Y'F
Else
O:Cpo M:[/B/jp-~7r0 <语句>End If
WAi,iR$g$cuc0所有这些可以用一个表格表示:51Testing软件测试网tA6E2b%m"I2uX l
图片1
JjI x3A"U7r#x051Testing软件测试网 p c"i-jV%O'Tbbf
用了过多的Else后你会感到很不方便,而且程序结构也不清晰,所以大多数的语言还有Select语句帮助解决这个问题。
g+t4J \5qf$^RO:|G0VB里的Select语句的格式是这样的:
mi/N5m m5`0Select Case <变量名>
h"]g7pT0Case <情况1>
3mQz3g+h|5Z/e0 ……
\A%{;u4Kp/P`0Case <情况2>51Testing软件测试网 u&M6FJtP
……51Testing软件测试网[~,u j:gZ6gl2T-\"v
Case <情况3>51Testing软件测试网X"nd!]A']p
……51Testing软件测试网LJn y x
……
}oBa?$Ov m2?^0 ……51Testing软件测试网}AYH@&| f
Case Else51Testing软件测试网N&elMY#NK
……51Testing软件测试网~&a+Ms{VjEnd Select
RT"b}W{-_+^:v0例如:
/e-frQux2rRW0Select Case a%
w;p/_$Ie3Z0Case 151Testing软件测试网 clx9g*xn*y,L
Print “a=1”
x(RGR Q#q&W uE0Case 2
s:{B&L9V{yQ0 Print “a=2”
x&P-~lv]k3e/n0Case Else
6Le$H.b A.Kf${"p0 Print “a does not equal to 1 or 2.”51Testing软件测试网e5Ro|{e9`7?qEnd Select
`I0z-jB._0五、循环语句51Testing软件测试网8_qR.Ep F!SGMP
循环结构是计算机语言里一种重要的结构,它的应用广泛,最简单的例子是累加器的作用,还可以用于穷举法,更直观的例子是把某件事重复指定的次数,这样就不用把要重复的语句输入多次,而通过循环结构完成,非常方便。51Testing软件测试网F*Sn"v6r
C语言里有一个“for”循环语句,VB里也有“For”关键字,作用也差不多,只是VB的“For”语句更容易理解。它的格式是:51Testing软件测试网&RCE|*XB
For <循环变量>=<初赋值> To <终值> [Step <步长>]
-wXn]:YXh0……51Testing软件测试网Ky _#O&s:~,h%}9|
9OlDbl'M.ge0
……Next <循环变量>
'm!xf3bF mS0在默认情况下,Step被设为“1”,可以省略,Step也可以设为负值,例如:51Testing软件测试网;p` xP:_$um j#n0S
Dim a=051Testing软件测试网s~g}J8h
For I=1 To 1051Testing软件测试网#aF4vX#`/_ W'w$P'lg
a=a+I51Testing软件测试网 a9AyW ztY~
Next I51Testing软件测试网8ci6M&LU%Zjn F
这是一个最简单的累加器的例子,把1到10累加在一起,然后赋值给“a”这样的效果和上面是一样的,只不过是倒着加罢了,请看:
"[L.\p)IAo&f4|0Dim a=0
d0p BK(L c }7I0For I=10 To 1 Step –151Testing软件测试网sSxz^ZB
a=a+I
ymJ?)D(rPZ#N|0Next I
&r[~&_BV.V0While语句也是一个很常用的循环语句,它的形式很多。51Testing软件测试网)X$bV0Q w#\YD*l
- Do While …… Loop语句
- While …… Wend 语句
- Do …… Loop While
While后面都跟逻辑条件判断,“Do While …… Loop语句”和“While …… Wend 语句”作用相似,都是先判断While后面的条件是否为“真”,如果为“真”则执行里面的语句,如果为“假”,则退出循环,循环直至条件为“假”终止。“Do …… Loop While ”与前两者的区别在于,它不管条件的真假,都会先执行“Do”后面的语句,也就是说,它至少执行语句一次。
qe)o"s i&BVF0与While用法相似的还有Until语句,它是直至条件为真则终止循环,句式把While上述三个语句的While换成Until即可,但是因为容易记混,所以我建议只用While即可。Until <条件>可以相当于While Not <条件>。51Testing软件测试网a a"b5Z~
For循环和Whlie循环应当根据适当的环境使用,它们有时也可替换。51Testing软件测试网Ux G*p;X]!` yw
Wm p+g?1liOi4m0
B Adm{2D I0六、运算操作
J*a [m0d\b0
- 数学运算
- +:加法运算,也适合于字符串的之间的合并运算。
- -:加法运算。
- *:乘法运算。
- /:除法运算。
- \:整除运算。
- Mod:求余运算。例如:a Mod b表示a被b整除以后的余数。
- ^:幂运算。A^B表示以A为底的B次方。
- 关系运算
关系运算也称比较运算,它表示不等式的真或假,VB共提供六种运算符,分别是=(等于),>(大于),<(小于),>=(大于等于),<=(小于等于)和<>(不等于)。51Testing软件测试网C*y/?0g FR'Mc K G5j|
- 逻辑运算
逻辑运算是对真或假的运算,我将列表说明:51Testing软件测试网~/O5XLTp'g
图片251Testing软件测试网!_)r&Dz6E+X+P
51Testing软件测试网8VI2? Tnm
]1MFpm/L@ Gx"a1~y0七、 数据与定义51Testing软件测试网zb7],p'y_v5Z^8W$O
本标题的内容已经在上一章向大家详述过,在这里就不再重复。
#~ NPX s!B^{7y0八、函数与过程51Testing软件测试网WPArS%A
函数与过程有许多相似的地方,它们之间最大也是最本质的区别就在于,函数有一个返回值,而过程只是执行一系列动作,所以可以简单的把函数理解成为一个变量,而VB中的每个事件都是一个过程,比如Command1_Click()就是一个过程。
/^-[ BX9{Pe)d,O0因为在程序设计中经常会有重复的地方,所以把它做成一个函数或一个过程,在使用时进行调用,可以节省大量的输入代码的时间,而且使用函数和过程也便于程序的结构化和修改查看。函数和过程都可以有参数,也可以没有参数。51Testing软件测试网Fw^vpk"z
关于函数和过程将在以后的章中配合实例讲解,请您继续关注测试思维后续VB修炼~~
V^)y,Y'V}5snX)?TD0kj9y9h{ju0