您好,欢迎来到六九路网。
搜索
您的当前位置:首页VB6.0的几种循环语句及条件语句

VB6.0的几种循环语句及条件语句

来源:六九路网
VB6.0的⼏种循环语句及条件语句

⼀、循环语句----------------------------------------------------------------------------------------------  可以参考:

  1.While...Wend 语句

  只要指定的条件为 True,则会重复执⾏⼀系列的语句。语法

While condition  [statements]  ..Wend

  2.Do...Loop语句  2.1 第⼀种⽤法

  ⽤ Do 循环重复执⾏⼀语句块,且重复次数不定。Do...Loop 语句有⼏种演变形式,但每种都计算数值条件以决定是否继续执⾏。如同 If...Then condition 必须是⼀个数值或者值为 True(⾮零)或 False(零)的表达式。  在下⾯的 Do...Loop 循环中,只要 condition 为 True 就执⾏ statements。Do While condition  statements  ..Loop

  2.2 第⼆种⽤法

  Do...Loop 语句的另⼀种演变形式是先执⾏语句,然后在每次执⾏后测试 condition。这种形式保证 statements ⾄少执⾏⼀次:Do

  statements

Loop While condition

  2.3 注:其它两种演变形式类似于前两个,所不同的是,只要 condition 为 False ⽽不是 True,它们就执⾏循环。----循环零次或多次Do Until condition  statementsLoop

----⾄少循环⼀次Do

  statementsLoop Until condition

  3.For...Next语句

  在不知道循环内需要执⾏多少次语句时,宜⽤ Do 循环。但是,在知道要执⾏多少次时,则最好使⽤ For...Next 循环。与 Do 循环不同, For 循环使⽤⼀个叫做计数器的变量,每重复⼀次循环之后,计数器变量的值就会增加或者减少。For 循环的语法如下:

For counter = start To end [Step increment]  statementsNext [counter]

参数 Counter、Start、end 和 increment 都是数值型的。

  注意 increment 参数可正可负。如果 increment 为正,则 Start 必须⼩于等于 end,否则不能执⾏循环内的语句。如果increment 为负,则 Start 必须⼤于等于 end,这样才能执⾏循环体。如果没有设置 Step,则 increment 缺省值为 1。实例:

//以下代码打印出所有有效的屏幕字体名:Private Sub Form_Click ()Dim I As Integer

For i = 0 To Screen.FontCount Print Screen.Fonts (i)NextEnd Sub

  4.For Each...Next语句

  For Each...Next 循环与 For...Next 循环类似,但它对数组或对象集合中的每⼀个元素重复⼀组语句,⽽不是重复语句⼀定的次数。如果不知道⼀个集合有多少元素, For Each...Next 循环⾮常有⽤。For Each...Next 循环的语法如下:For Each element In group  statementsNext elementt

例如,下⾯的⼦过程打开 Biblio.mdb,把每⼀个表的名字加到列表框中。Sub ListTableDefs ()Dim objDb As Database

Dim MyTableDef as TableDef

Set objDb = OpenDatabase(\"c:\\vb\\biblio.mdb\", _True, False)

For Each MyTableDef In objDb.TableDefs ()List1.AddItem MyTableDef.NameNext MyTableDefEnd Sub

  请记住使⽤ For Each...Next 时的⼏点:

  (1)对集合,element 只能是 Variant 变量,或⼀般的 Object 变量,或“对象浏览器”中列出的对象。  (2)对数组,element 只能是 Variant 变量。

  (3)For Each...Next 不能与⽤户⾃定义类型的数组⼀起使⽤,因为 Variant 不可能包含⽤户⾃定义类型。

⼆、条件语句------------------------------------------------------------------------------------------------  关于作⽤域问题请参考    1.简单If条件语句

使⽤在称之为分⽀结构的特殊语句块中的条件表达式控制了程序中哪些语句被执⾏以及什么样的执⾏次序执⾏。

“If...Then”分⽀结构在程序中计算条件值,并根据条件值决定下⼀步执⾏的操作。最简单的“If...Then”分⽀结构可以只写在⼀⾏:

If Condition Then Statement[Else statement]

注意:“If...Then”分⽀结构⽤于给程序添加逻辑控制能⼒。这⾥,“Condition”是个条件表达式,“Statement”是条件有效的Visual Basic语句。例如:

If Score>=20 Then Label1.Text=\"You Win!\"是个使⽤了下述条件表达式的分⽀结构:Score>=20 根据这个表达式的值,程序决定是否把Label1对象的“Text”属性设置为“You Win!”。如果“Score”变量的值⼤于等于20,Visual Basic设置该属性的值,否则,Visual Basic跳过这条赋值语句,然后执⾏事件过程中的下⼀⾏语句。这类⽐较运算的结果不是“True”就是“False”,条件表达式从来不会产⽣模棱两可的值。  2.If...Then...Else语句

  Visual Basic还⽀持另⼀种格式的“If...Then”分⽀结构,该结构中包含⼏个条件表达式,由多⾏语句组成,其中包含了重要关键字“ElseIf”、“Else”以及“End If”。 If Condition1 Then 'Statements

ElseIf Condition2 Then 'Statements

'[其他ElseIf⼦句及其相应的执⾏语句] Else

Statements End If

  这个结构中,“Condition1”⾸先被计算。如果这个条件表达式的值为“True”,那么这个条件表达式下的语句被执⾏;如果第⼀个条件的值不是“True”,那么计算第⼆个表达式(Condition2)的值,如果第⼆个条件的值为“True”,那么这个条件表达式下的语句块被执⾏(如果要判断更多的条件,那么继续增加“ElseIf”⼦句及该⼦句下的语句块);如果所有条件表达式的值都不是“True”,那么执⾏“Else”⼦句下的语句块;最后,整个结构使⽤“End If”关键字结束。多⾏“If...Then”结构特别适合于分段计算问题,⽐如税费⽅⾯的计算。

  下⾯的代码展⽰了如何使⽤多⾏“If...Then”结构来确定递进税计算问题(收⼊和税率的对应关系取⾃美国国内收⼊服务1997年税率表):

If AdjustedIncome<=24650 Then '15%税段

TaxDue=AdjustedIncome*0.15

ElseIf AdjustedIncome<=59750 Then '28%税段

TaxDue=3697+((AdjustedIncome-24650)*0.28) ElseIf AdjustedIncome<=124650 Then '31%税段

TaxDue=13525+((AdjustedIncome-59750)*0.31) ElseIf AdjustedIncome<=271050 Then '36%税段

TaxDue=334+((AdjustedIncome-124650)*0.36) Else

'39.6%税段

TaxDue=86348+((AdjustedIncome-271050)*0.396)End If

  注意:总是可以添加更多的“ElseIf”块到“If...Then”结构中去。但是,当每个“ElseIf”都将相同的表达式⽐作不同的数值时,这个结构编写起来很乏味。在这种情况下可以使⽤“Select Case”判定结构。   3.Select Case结构

  Visual Basic还⽀持在程序中使⽤“Select Case”分⽀结构来控制语句的执⾏。 “Select Case”结构与“If...Then...Else”结构相似,但在处理依赖于某个关键变量或称作测试情况的分⽀时效率更⾼。并且,使⽤“Select Case”结构可以提⾼程序的可读性。“Select Case”结构的语法如下所⽰:Select Case Variable Case Value1 Statements Case Value2 Statements Case Value3 Statements ...

End Select

  “Select Case”结构以关键字“Select case”开始,以关键字“End Select”结束。“Select Case”结构中的“Variable”可以是变量、属性或者是表达式,“Value1”、“Value2”,“Value3”可以是数值、字符串或与要测试的其他情况相关的其他值,如果其中某个值与变量相匹配,那么该“Case”⼦句下的语句被执⾏,然后Visual Basic执⾏“End Select”语句后⾯的语句。“SelectCase”结构中可以使⽤任意多个“Case”⼦句,“Case”⼦句中也可以包括多个“Value”值,多个“Value”值之间使⽤逗号分隔。   下⾯⽰例展⽰了程序中如何使⽤“Select Case”结构打印与某⼈年龄相关的信息。当“Age”变量与某个“Case”值匹配时,相应的信息显⽰在标签对象中。

Select Case Age case 16

Label1.Text=\"You can drive now!\" Case 18

Label1.Text=\"You can vote now!\" Case 21

Label1.Text=\"You can drink wine with your meals.\" Case 65

Label1.Text=\"Time to retire and have fun!\" End Select

  注意:“Select Case”结构⽐功能等效的“If...Then”结构更清晰易读。“Select Case”结构还⽀持“Case Else”⼦句,该⼦句可⽤于当不满⾜所有“Case”条件时显⽰信息。下⾯是说明“Case Else”⼦句⽤法的⼀个⽰例:Select Case Age

Case 16

Label1.Text=\"You can drive now!\" Case 18

Label1.Text=\"You can vote now!\" Case 21

Label1.Text=\"You can drink wine with your meals.\" Case 65

Label1.Text=\"Time to retire and have fun!\" Case Else

Label1.Text=\"You're a great age!Enjoy it!\" End Select

  注意:“Select Case”结构每次都要在开始处计算表达式的值,⽽“If...Then...Else”结构为每个“ElseIf”语句计算不同的表达式,只有在“If”语句和每个“ElseIf”语句计算相同的表达式时,才能使⽤“Select Case”结构替换“If...Then...Else”结构。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- 69lv.com 版权所有 湘ICP备2023021910号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务