循环语句ppt
Next I MsgBox "1+3+5+…+99=" & Sum, , "求和"
End Sub
思考:
➢例中当输出对话框出现时,I 的值是多少? ➢如果省略Step 2,程序的结果如何?
➢For语句能不能改写成For I=99 To 1 Step -2 ?
循环语句-For…Next循环
[例3.10] 求平均成绩
For Each…Next、While…Wend ❖ 应用最多的:For…Next与Do While…Loop
循环语句-For…Next循环
❖ For…Next循环一般应用于循环次数已知的场合
For <循环变量> = 初值 To 终值 [Step 步长]
语句块(循环体) Next [循环变量]
Step缺省为 1
Private Sub Form_Click() Dim Data As Integer, Sum As Integer, N As Integer Dim Average As Single Sum = 0 : N = 0 Data = InputBox("输入第" & N + 1 & "个同学的成绩", "求平均分") Do While Data <> -1 ' -1表示结束输入
循环语句
循环控制
循环的本质:在一定的条件下,不断地重复某种动作。
在许多问题中需要用到循环控制。例如,求 若干个数之和:
1×1+ 2×2+ 3×3=? 1+2+3+4+……=? 对计算机程序而言,循环必须具备两个重要因素: 1. 在一定的条件下,重复执行一组指令。 2. 必然出现不满足条件的情况,使循环终止。
例: PW=InputBox("输入密码")
Do While PW<>"ABCD"
PW=InputBox("输入密码")
Loop ❖ 该程序段首先判断变量 PW 的值是否为“ABCD”,若不
是“ABCD”则执行循环,直到输入“ABCD”后循环结束。
循环语句-Do…Loop循环
[例3.12] 计算平均分
循环语句-For…Next循环
[例3.9] 求1+3+5+7+…+99
Private Sub Form_Click() Dim Sum As Integer, I As Integer Sum = 0 '保存累加和,先清零
本例的特点是数据 项之间相差2,
即Step的值为2
For I = 1 To 99 Step 2 Sum = Sum + I
❖ 语句功能:若条件成立,则重复执行循环。 ❖ 语句格式:
Do While 条件 语句块
Loop ❖ 说明:
(1)语句中的条件与Do……Loop While语句的条件 相同。
(2)计算机执行Do While……Loop语句的过程:
循环语句-Do…Loop循环
• 首先判断Do While语句后的条件,若值是True,则执行D o和Loop之间的语句;若值是False,则循环结束,执行D o While……Loop语句的后继语句。
Data = InputBox("输入第" & I & "位同学的成绩", "求平均分确")
Sum = Sum + Data
定
Next I
Average = Sum / N
MsgBox "全班" & N & "名学生的平均分为" & Average, , "求平均分"
End Sub
本例的循环变量 I 控制人数
句是循环变量的值增加一个步长值。 (5)For循环语句中的语句块又称为循环体。 例如:
For I=1 To 10 Step 1 TextBox1.Text = TextBox1.Text & I & " "
Next I 该程序段执行10次循环,在文本框内输出结果为:
1 2 3 4 5 6 7 8 9 10
循环控制
例:求1~100的和。 ❖ 根据已有的知识,可以用“1+2+……+100”来求解,但显然很繁琐。现在
换个思路来考虑: 1、首先设置一个累加器sum,其初值为0; 2、利用 sum = sum+n 来计算(n依次取1、2、…、100),只要解决以下
3个问题即可: (1)将n的初值置为1; (2)每执行1次 sum = sum+n 后,n 增加1 n=n+1 ; (3)当n增到101时,停止计算。此时,sum的值就是1~100的累计和。
循环语句-Do…Loop循环
1. 当型循环
Do While <条件表达式> 循环体
Loop
Hale Waihona Puke Do 循环体Loop While <条件表达式>
先判断后执行
No
条件表达式
成立?
Yes 循环体
先执行后判断
循环体
No 条件表达式 成立? Yes
特点:条件表达式成立执行循环体内容
Do While……Loop语句
Const N = 10 '学生人数
Private Sub Form_Click()
Dim Sum As Integer, I As Integer
Dim Data As Integer, Average As Single
Sum = 0 '存放累加值的变量清零
For I = 1 To N '循环40次,步长值为1省略
❖ 根据已有的知识,单独实现每一步都不难。由于需要经常使用这种重复计 算结构(循环结构),VB语言提供了2类循环语句来实现,以简化、并规 范循环结构程序设计。
循环语句
❖ 程序的另一种结构是循环结构 ❖ 循环结构作用是重复执行一段程序 ❖ 循环是有条件的、次数是有限的 ❖ VB的循环语句:For…Next、Do While…Loop、
例:求1~100的累计和
For i=1 To 100 sum=sum+i
Next i
❖ 计算机执行For语句的过程: 1)将初值赋予循环变量。 2)判断循环变量的值是否小于等于循环终值(步长值为正),如果条件
满足,则执行循环体内的语句,循环变量增加步长值;否则循环结 束,执行Next语句的后继语句。
❖ 工作原理
循环变量=初值
Yes
循环变量超出范围?
No 循环体
循环变量增加一个步长
For…Next使用说明:
(1)循环变量必须是数值型变量。 (2)初值、终值、步长值可以是表达式,一般情况下,它们都应该是整
数。 (3)步长值可以是正数(初值应当小于终值)或负数(初值应当大于终
值),但不能为0。如果步长为1,“step 1”可以不写。 (4)Next后面的循环变量与For语句中德循环变量必须一致。只想该语