发布时间 : 星期一 文章第三章 程序设计基础更新完毕开始阅读
Case子句中允许出现多个表达式 例如:
Case 1 to 5,12,Is>Min
表示测试变量的值在1 到5范围内,或者12,或者大于Min,均匹配。 Case子句中的表达式列表允许是字符串 例如:
Case “Xie”,“Li”TO “Wang”,Name$
表示只要测试变量的值与Xie 匹配或落在“Li”TO “Wang”之间或与Name$的值匹配,均认为匹配成功。
?
执行流程:
表达式列表的数据类型应与测试变量值的类型一致,否则将强制转换为测试变量值的数据类型。
图3.7 Select Case 结构
【例3.6】通过一个文本框读入一个学生成绩,然后打印出它的等级。(教材P93例3.9)
分析的流程图:
图3.8 例3.6流程图
四、选择嵌套
在一个选择结构中可以又出现另一个选择结构,这称为选择结构的嵌套,如: IF 条件 THEN 语句块1 else 语句块2 endif 注意:ELSE、ENDIF 总是与它上面离它最近的IF语句配对。
第 13 页 共 26 页
可包含另一个选择语句 (SELECT CASE 语句 与 IF 语句类似) 例:有一个函数:
1 (X>0) Y= 0 (X=0) -1 (X<0) PRIVATE SUB FORM_CLICK() DIM X AS SINGLE DIM Y AS SINGLE X=VAL(TEXT1)
IF X>=0 THEN IF X>0 THEN Y=1 ELSE Y=0 ENDIF ELSE Y=-1 ENDIF PRINT “y=”;y ENDSUB 3.6.4 循环结构
计算机可以为我们不厌其烦地重复做某一项工作成千上万,这就是循环控制的功能。Visual Basic 支持的循环结构有: ? ? ?
Do …Loop For … Next While … wend
一、Do … LOOP 结构
用Do 循环重复执行一语句块,且重复次数不定。
1. Do … Loop 语句有4种形式:
DO WHILE 循环条件 语句序列 LOOP
图3.9 do while … loop DO
第 14 页 共 26 页
语句序列
LOOP WHILE 循环条件
图3.10 do … loop while 结构 DO UNTIL 循环条件 语句序列 LOOP
图3.11 DO UNTIL … LOOP结构 DO
语句序列
LOOP UNTIL 循环条件
图3.12 DO … LOOP UNTIL结构
2. 注意: 循环体内必须存在这样一条语句来影响测试条件,使得测试条件的逻辑值发生变化,否则这个循环就变成了死循环。
3. 举例:
【例3.7】按下式累加求自然对数的近似值:
e?1?11111??????1!2!3!4!N!第 15 页 共 26 页
直到最后一项的值小于10-6为止。(教材P103例3.16) 分析:本题涉及累加和连乘,注意两个定式:
累加定式:
累加器SUM=0
语句序列 循环体 SUM=SUM+… SUM为累加值 连乘定式: ITEM=1
语句序列 循环体 ITEM=ITEM*… ITEM为连乘结果 流程图:
图3.13 例3.7流程图
二、For …Next 结构
在知道要执行多少次循环时,最好使用For … Next 结构 格式:
For 循环变量 = 循环变量初值 To 循环变量终值 [ Step 增量 ] 循环体 Next 循环变量 说明:
1. 循环变量的初值、终值和步长都必须是数值型表达式或数值型变量。
2.增量值为正值,则初值应小于终值,循环变量递增; 增量值为1,则 Step 子句可以省略,循环变量递增1; 增量值为负值,则初值应大于终值,循环变量递减。
流程:
第 16 页 共 26 页