VB第4章分支与循环结构.ppt
《VB第4章分支与循环结构.ppt》由会员分享,可在线阅读,更多相关《VB第4章分支与循环结构.ppt(49页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、p 程序控制结构:是语句排列和控制转移方向的描述,程序控制结构:是语句排列和控制转移方向的描述,决定了程序执行的顺序。决定了程序执行的顺序。p 三种基本控制结构:顺序、选择、循环三种基本控制结构:顺序、选择、循环p 顺序结构:最基本、最简单的结构,按语句出现的先顺序结构:最基本、最简单的结构,按语句出现的先后顺序依次执行。后顺序依次执行。4.1 4.1 顺序结构顺序结构 先对条件先对条件测试测试,根据测试的结果选择执行不同的分支,根据测试的结果选择执行不同的分支1.If1.If条件语句条件语句2.Select Case 2.Select Case 结构结构4.2 4.2 选择结构选择结构语句的
2、三种形式:If条件语句条件语句 例:例: score = 60 Then Print 祝贺你考试通过!祝贺你考试通过! Print “继续努力!继续努力!” : Score=60 Score=60 ThenThen Print Print “祝贺你考试通过!祝贺你考试通过!” Print Print “继续努力继续努力!” 格式格式:(1) If :(1) If 条件条件 Then Then (A (A组组语句语句) ) EndIfEndIf (2)(2) If If 条件条件 Then Then 语句语句执行规则:若执行规则:若, ,执行执行A A组语句组语句; ; 条件不成立条件不成立,
3、,跳过跳过A A组语句组语句. .条件条件A组语句组语句TF 例:例: If score = 60 Then Print score Print 祝贺你考试通过!祝贺你考试通过! End If Print “继续努力!继续努力!” 例例1:输入两个数,分别放在:输入两个数,分别放在x和和y变量中,比较它们大小,变量中,比较它们大小, 然后将大数放在然后将大数放在x中,小数放在中,小数放在y中。中。x yx%=Text1.textY%=Text2.textIf x = 60 Then Print “祝贺你考试通过!祝贺你考试通过!” Else Print “考试未通过考试未通过.” End If
4、 Print 继续努力!继续努力!格式:格式: 条件条件 ThenThen A A组语句组语句 ElseElse B B组语句组语句 执行规则执行规则: :条件条件成立成立, ,执行执行A A组语句组语句, , 条件条件不成立不成立, ,执行执行B B组语句组语句例例2:计算分段函数:计算分段函数: Y=x2+1 (x0) x3+3x (x=0)条件条件A组语句组语句TFB组语句组语句If条件语句条件语句例:例:(思考思考)输入二级考试成绩,要求显示对应三级制的输入二级考试成绩,要求显示对应三级制的 评定。评定条件为:评定。评定条件为: 优:优:Mark 90等级:等级: 通过:通过:60 M
5、ark 90 未通过:未通过:=90?输入成绩开始输出“通过”T输出“优”T成绩=60?F输出“未通过”FIf条件语句条件语句.Mark=Text1.TextIf Mark = 90 Then Print 优优ElseIf Mark = 60 Then Print 通过通过Else Print 未通过未通过End If格式: 条件1 Then (A组语句) ElseIf 条件2 Then (B组语句) ElseIf 条件3 Then (C组语句) Else (n组语句) If条件语句条件语句格式:If 条件1 Then A组语句 ElseIf 条件2 Then B组语句 ElseIf 条件3
6、Then C组语句 Else n组语句 End If注意:注意: 多分支语句中,有多个分多分支语句中,有多个分 支同时满足,只执行支同时满足,只执行 与之匹配的语句块。与之匹配的语句块。 注意注意 的写法的写法If条件语句条件语句【例4.3】 用键盘输入一字符,判断该字符是小写字母、大写字母、数字字符还是其他字符,并作相应的显示。If条件语句条件语句4. If4. If语句的嵌套语句的嵌套 If语句的嵌套是指if 或else后面的语句块中又包含If语句。 If条件语句条件语句使用嵌套语句时应注意以下问题:使用嵌套语句时应注意以下问题:(1 1)如果存在嵌套时,语句中的每一个)如果存在嵌套时,语
7、句中的每一个Else必须和一个必须和一个If相对相对应,应避免产生混乱。应,应避免产生混乱。在书写时,可以将同一层的在书写时,可以将同一层的If子句和子句和Else子句左对齐,子句左对齐,内层的各语句块相对于外层向右缩进若干内层的各语句块相对于外层向右缩进若干空格,以使程序结构更加清楚便于阅读和查错。空格,以使程序结构更加清楚便于阅读和查错。(2 2)每一个双分支结构都必须以)每一个双分支结构都必须以If开始,以开始,以End If结束。结束。(3)内层嵌套的结构中除了满足该层规定的条件外, 还必须首先满足外层结构中相应位置的条件。(4)VB中对块嵌套的层数没有限制,在嵌套的结构中仍然可以继续
8、嵌套其他的结构.(5)利用双分支If语句的嵌套可以解决“多分支”选择的问题。Select CaseSelect Case 测试表达式测试表达式 Case Case 测试项测试项1 1 A A组语句组语句 Case Case 测试项测试项2 2 B B组语句组语句 Case ElseCase Else n n组语句组语句End SelectEnd Select 测试表达式可以是数值型或字符型测试表达式可以是数值型或字符型 测试项的取值必须与测试表达式测试项的取值必须与测试表达式 的值类型相同,不能包含逻辑运算符的值类型相同,不能包含逻辑运算符常用形式为:常用形式为:n具体取值,用逗号隔开具体取值
9、,用逗号隔开如:如:1 1,5 5,9 9n连续的范围:界连续的范围:界1 TO 1 TO 界界2 2如:如:12 To 20 12 To 20 n满足某个条件:满足某个条件:IsIs运算符运算符如:如:Is10 Is10 n三种形式可以组合使用三种形式可以组合使用Select Case语句语句例:输入二级考试成绩,要求显例:输入二级考试成绩,要求显 示对应三级制的评定。示对应三级制的评定。 Mark=Val(Text1.Text)Select case Mark case is=90 Print 优优 case 90 to 60 Print “通过通过 Case Else Print “未通
10、过未通过End selectp对于多分支选择结构,用对于多分支选择结构,用Select Case 语句比用语句比用IfThenElseIf语句更为直观,程序可读性强。语句更为直观,程序可读性强。p两者的区别在于:两者的区别在于:Select Case 语句只对单一表达式求值语句只对单一表达式求值,并,并根据求值结果执行不同的语句块,而根据求值结果执行不同的语句块,而IfThenElseIf语句可语句可以对多个不同的表达式求值以对多个不同的表达式求值, ,所以,当对多个条件进行判断时,所以,当对多个条件进行判断时,只能用只能用IfThenElseIf语句。语句。4.3 4.3 循环结构循环结构循
11、环循环: :是在指定的条件下多次重复执行一组语句是在指定的条件下多次重复执行一组语句1. For 1. For NextNext2. Do2. DoLoop Loop 3. 3. 循环嵌套循环嵌套 4.4.其他辅助控制语句其他辅助控制语句 VB提供了三种不同风格的循环结构,分别是:计数循环(ForNext循环)当循环(While循环)Do循环(DoLoop循环) 其中计数循环常用于已知循环次数的循环,而当循环和Do循环适合于循环次数未知,只知道循环结束条件的循环。 For For 循环变量循环变量= =初值初值 TO 终值终值 Step 步长步长 语句块语句块 Exit ForExit For
12、 语句块语句块 Next Next 循环变量循环变量For循环格式:循环格式:For循环循环-计数型循环计数型循环步长省略,步长省略,默认为默认为1 1循环体循环体(1)系统将初值赋给循环变量,并自动记下终值和步长。(2)判断循环变量是否超过终值:未超过终值,执行一次循环体;否则,结束循环(3)执行Next语句,将循环变量加上一个步长。(4)转到(2),继续执行。(5)结束循环,执行Next后面的语句。 循环变量=初值循环变量是否到达终值循环体循环变量循环变量= =循环变量循环变量+ +步长步长TrueFalse程序代码:程序代码: Dim I%, s % For I = 1 To 10 st
13、ep 1 Next I Print I, s例例1:1:求求1+2+3+4+1+2+3+4+10+10之和之和. .分析分析: :重复过程重复过程( (循环体循环体):): s ss s+I+I初值、终值和增量初值、终值和增量:1、10、1循环体的执行次数是多少循环体的执行次数是多少 ? ? 输出的输出的I、S的值是多少的值是多少 ? ?For I = 1 To 10执行多少次?执行多少次?s = s + IFor I=10 To 1 Step -1For循环循环 For For 循环变量循环变量= =初值初值 TO TO 终值终值 Step Step 步长步长 语句块语句块 Exit For
14、Exit For 语句块语句块 Next Next 循环变量循环变量循环体循环体 Dim I As Integer, s As Integer For I = 1 To 10 s = s + I Next I Print I, s 例例2:2: 求求1010!分析分析: :重复过程重复过程: :* *初值、终值与增量不变初值、终值与增量不变 例例1:1:求求1+2+3+4+ 1+2+3+4+ +10+10之和之和. .分析分析: :重复过程重复过程( (循环体循环体):): + +初值、终值和增量初值、终值和增量:1、10、1 Dim I As Integer, s As Integer Fo
15、r I = 1 To 10 s = s * I Next I Print I, ss=1For I = 1 To 10For I = 1 To 10 s=1For循环循环功能说明:(1)在执行过程第二步中,所说的“超过”包含两种情况 步长为正数时,循环变量大于终值为“超过”。 步长为负数时,循环变量小于终值为“超过”。(2)终值和初值的取值有以下情况: 步长为正数时,终值应该大于初值,否则循环体不会被执行。 步长为负数时,终值应该小于初值,否则循环体不会被执行。 当循环变量等于终值时,不管步长是正数是负数,均执行一次循环体。(3)循环次数由初值、终值和步长确定,计算公式为:循环次数 = Int
16、(终值-初值)/ 步长)+ 1(4)For语句和Next语句必须成对出现,不能单独使用。(5)循环变量在循环体内可以被引用参与运算。(6) Exit For表示当遇到该语句时,退出循环体,继续执行Next语句下面的代码;(7)当循环变量为整型,而循环参数为带小数点的实数时系统将按照CInt函数或CLng函数的方式,将其转换为与循环变量相同的整型数。 Private Sub Command1_Click() Dim i As Integer For i = 7 To 8.6 Step 2.5 Print i Next i End Sub例:分析下列程序段的输出结果:例:分析下列程序段的输出结果:
17、 Dim I As Integer, J As Integer J = 2:m=6 For I = 0 To m Step J I = I + 1 J = J + 1 m=m+1 Next I print I,J, mFor循环循环o【例4.6】 输入20个整数,分别计算并输出正数和负数的平均值。1. Do 1. Do WhileWhile 循环体循环体 LoopLoop2. D0 2. D0 循环体循环体 Loop While Loop While 3. Do Until 3. Do Until 循环体循环体 LoopLoop4. Do 4. Do 循环体循环体 Loop Until Loo
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VB 分支 循环 结构
限制150内