波纹管密封是什么意思:第5讲 流程控制语句

来源:百度文库 编辑:中财网 时间:2024/04/29 23:43:29

第5讲      流程控制语句
作者:http://hi.baidu.com/landmao

一个程序的流程,都是由顺序结构、选择结构和循环结构三者组合而成。顺序结构的特点是语句由上而下逐行地执行。选择结构是当程序执行时,欲改变程序执行的顺序时使用。循环结构俗称重复,当程序中有某个语句块需要循环执行时使用。因此,设计一个具有结构化的程序,除了必须具有清晰的逻辑分析能力外,要使用以上所述的三种结构来实现。
5.1      If语句
       “选择结构”指当程序执行时,需要改变执行的流程时,则必须使用条件来做判断,若满足条件(即结果为True)则执行某个语句段,若不满足条件(即结果为False)则执行另一个语句段。

1.If…Then…Else语句

在设计程序时,常会碰到“如果…那么…”或时“如果…那么…否则…”的情况,这种情况便要使用If…Then…或是If…Then…Else…语句来完成。由下面语法可知,若满足条件就执行“Then语句块”,不满足条件n就执行“Else语句块”。其中条件可为关系表达式或多个关系表达式中用逻辑表达式连接的混合表达式,其语法形式如下所示:
If      (条件 ) Then [Then 语句块]
Else [Else 语句块]
End If
        
2.If…Then…ElseIf语句

设计程序时,若碰到“如果…那么…否则如果…那么…否则”,便需使用If…Then…Elseif…Then…Else…语句来完成。如下面语法,若条件1的结果为True,则执行“Then语句块1”,接着继续执行EndIf后面的语句;若条件1的结果为False,则检查条件2的结果,若为True则执行“ElseIf语句块2”,接着继续执行EndIf后面的语句。一直到所有结果的条件都不满足时,才执行Else后面的“Else语句块”。其语法如下所示:
If (条件1) Then          [Then语句块1]
ElseIf (条件2) Then       [ElseIf语句块2]
ElseIf (条件3) Then       [ElseIf语句块3]

ElseIf      [ElseIf语句块]
Eed If
5.2 Select Case选择语句
程序设计时若碰到多向选择时,当然可使用If…Then…ElseIf或嵌套的If…Then…Else来完成,但是太多的If会使得程序的复杂度提高,造成不易阅读且难维护;若改用下面的Select Case语句,程序不但看起来简洁而且易维护。如下面语法,若表达式的结果满足value1,则执行“Value1语句块”,再继续执行End Select后面的语句;若表达式的结果不满足value1,满足value2,,则执行“Value2语句块”,依次类推;若都不满足所设置的Case value值,便执行“Value2语句块”Else语句块后,再继续执行End Select后的语句。其语法形式如下:
Select Case 表达式
Case value1
[value1语句块]

Case value2
       [walue2语句块]
End Select
表达式可以为变量、数值或字符串表达式,但要注意Case子句中的value必须和表达式的数据类型一致。
5.3 IIf选择语句
IIf式一个双重选择函数,如下面语法,若表达式的结果为True,则返回V1。否则返回V2。返回值可以为数值、字符串或表达式。IIf函数里面若还有IIF函数就构成嵌套选择结构。其语法形式如下所示:
IIf(表达式,V1,V2)
5.4 循环语句
当程序执行时,需要将某个语句块执行多次时,便需要使用“循环结构”。按照循环执行次数确定是否分成For…Next语句(每次执行循环次数确定)和Do…语句(次数由当时条件决定)两大类。

1.For…Next语句

程序设计时,若希望由某个值开始,每执行指定的语句块一次,便将该数值增(减)一值,若结果比终值还小(大),便继续执行该语句块,直到不满足终值才离开该语句块,如重复显示某个数字10次、连续输入数据到数组等都必须使用下面语法来完成:
For counter = start To end [Step Increment]
       语句块
[Exit For ]
语句块
Next For
若startend则Step不能省略,且Increment为负值。Start和end参数可以为小数。

2.For Each…Next语句

For Each…Next语句和For…Next功能一样,当满足条件时,会将For…Next间的语句执行一次,直到不能满足条件为止。如下面语法,当group(指对象的集合或数组)内至少有一个元素,就能进入For Each…Next循环。一旦进入循环,便会针对group内的第一个元素来执行语句块一次;若group内有更多元素,则循环内的语句块就会针对每个元素来继续执行。当各元素都执行一次后,循环便结束,继续执行Next语句后面的语句。其语法形式如下所示:
For Each element In group
      语句块
[Exit For]
[语句块]
Next element
其中element为必要项,是一个变量名称,用来在集合或数组的每个元素中重复。Element的数据类型必须是group中元素的数据类型。group为必要项,是一个对象变量,必须引用对象集合或数组statement为一选择项,介于For Each…Nex之间的一行或数行语句,在group内的每个项目发生时执行一次。

3.Do While…Loop语句

设计程序时,当希望条件为True时才进入循环,执行循环内的语句块,直到碰到Loop再回到Do While,检查是否满足条件,若满足条件继续执行循环内的语句块,直到不满足才跳离循环继续执行Loop后面的语句。因此,循环内必须有语句将条件变为False,否则会变成无穷循环而无法跳出。若想中途离开循环可在要离开的地方插入Exit Do即可。
Do While(条件)

[Exit Do]

Loop

4.Do Until…Loop语句

此语句和Do While…Loop语句都属于前测试循环,两者使用上的差异在于,若不满足条件才进入循环时,必须使用Do Until…Loop;若满足条件才进入循环时,才使用Do While…Loop。其语法形式如下:
Do Until (条件)
      语句块
[Exit Do]
语句块
Loop

5. Do…Loop While语句

         程序中使用循环时,若需要第1次进入循环时不必检查是否满足条件,而直接进入循环,第2 次以后才需要检查是否满足条件,当条件条件为True时,才能再进入循环执行,此时便需要使用Do…Loop While语句。因此此种情况,循环至少执行一次,是属于后测试循环。其语法形式如下:
Do
      语句块
[Exit Do]
语句块
Loop While(条件)

6. Do…Loop Until语句

此语句和Do…LoopUntil语句都属于后测试循环,两者使用上的差异在于,若不满足条件才进入循环时,必须使用Do…Loop Until。若满足条件才进入循环时必须使用Do…Loop While。其语法形式如下:
Do
      语句块
[Exit Do]
语句块
Loop Until(条件)

        在实际应用中,前三种应用会多一些,通过具体多设置,一般都能达到目的。因此,要把前三种掌握好。