当前位置:首页 >> 计算机软件及应用 >> vb教程,循环结构_图文

vb教程,循环结构_图文

第6 章
Visual BASIC
程 序 设 计

循环结构程序设计
本章要点:
? For...Next循环

? Do...Loop循环
特点: 重复相同或相似的操作步骤 结构: 循环体—要重复执行的语句序列。 循环控制部分—规定循环的重复条件或重 复次数,确定循环范围的语句
1

6.1 第 六 章 循 环 结 构 程 序 设 计

For…Next循环结构

1. 格式 For <循环变量>=<初值> To <终值> [Step <步长>] <语句组1> 初值 循环变量 [Exit For] Yes <语句组2> 循环变量值超过终值? Next [<循环变量>] No 2. 功能: 执行过程如流 程图所示
执行循环体

循环变量+步长

循环变量

后续语句

2

第 六 章 循 环 结 构 程 序 设 计

3. 说明 (1)循环变量——数值变量 (2)初值,终值,步长——数值表达式 (3)步长——可正可负,但不能为0,为1时可以省略 步长>0时,必须: 初值<=终值 循环结束条件——循环变量的值>终值 步长<0时,必须: 初值>= 终值 循环结束条件——循环变量的值<终值 (4)Exit For——退出循环,常放在条件语句中 (5)Next之后的循环变量应与For语句中的循环变量 应一致,也可以省略
3

【例6-1】求1+2+3+4+…+N 第 六 章 循 环 结 构 程 序 设 计 累加分析: 累加器(变量)初值 S=0 循环体(重复执行) S=S+I (I=1,2,…,N) Private Sub Command1_Click() Dim N As Integer, I As Integer, Sum As Integer N = Val(Text1.Text) Sum = 0 Text1 For I = 1 To N Label3 Sum = Sum + I Next I Label3.Caption = Sum End Sub 4

思考: 1. 求12+22+32+42+……+1002 第 六 章 循 环 结 构 程 序 设 计 2. 求13+33+53+……+n3 3. 求1-3+5-7+…+(-1)n+1(2n-1)

1 1 1 1 n ? 1 4. 求 ? ? ? ? ? (?1) 1 3 5 2n ? 1 1 1 1 1 5. 求 ? ? ??? 1? 2 2 ? 3 3 ? 4 n (n ? 1)

5

第 六 章 循 环 结 构 程 序 设 计

例: 判断以下程序段的执行结果: For i = 5 To 1 Step -1 Print i * i; Next i Print Print i 例: 判断以下程序段的执行结果: X=6 For K = 1 To 10 Step -2 X=X+K Next K Print K,X
6

第 六 章 循 环 结 构 程 序 设 计

【例6-2】求 N!( N!=1×2×3×…×N) 累乘分析: 初始化: F=1 循环体: F=F × I (I=1,2,3……N) 程序: Private Sub Command1_Click() Dim N As Integer, I As Integer, F As Long N = Val(Text1.Text) F=1 For I = 1 To N F=F*I Next I Text2.Text = F End Sub

7

思考: 1. 求1×3 ×5 ×7……(共N项)。 第 六 章 循 环 结 构 程 序 设 计

1 1 1 1 2. 求: ? ? ? ?? 1 3 5 2n ? 1
3. 求: 2 ? 2 ? 4 ? 4 ? 6 ? 6 ? ? 2k ? 2k

1 3 3 5 5 7

2k ? 1 2k ? 1

8

第 六 章 循 环 结 构 程 序 设 计

【例6-3】打印斐波那契(Fibonacci)数列的前20项 斐波那契数列如下: 0,1,1,2,3,5,8,13,… 即从第三项起每一项是其前两项之和。 分析: …… Private Sub Form_Click() A = 0:B = 1 Text1.Text = Text1.Text & Str(A) & Str(B) & _ Chr(13) & Chr(10) For I = 1 To 9 A=A+B B=A+B Text1.Text = Text1.Text & Str(A) & Str(B) & _ Chr(13) & Chr(10) Next I End Sub 9

思考: 第 六 章 循 环 结 构 程 序 设 计

1. 在窗体上打印1、3、5、7、9、…、N。
2. 在窗体上显示1到500之间所有能被3整除的数, 每行10个数。 3. 在带水平滚动条文本框中显示1到指定N之间所 有能被3和7同时整除的数。 4. 在带垂直滚动条的文本框中显示00~3600之间的 正弦和余弦值,每隔20求一组值。

10

第 六 章 循 环 结 构 程 序 设 计

例:找出1-1000之间的全部同构数 说明: 如果一个数出现在其平方数的右端, 则称此数为同构数。如5在5^2=25的右端, 25在25^2=625的右端等

11

6.2 Do…Loop循环结构 第 六 章 循 环 结 构 程 序 设 计 问题: 求12+22+32+42+…小于某数N的最大值,N由 用户指定。 特点:已知循环条件、未知循环次数,用Do … Loop 循环结构实现 1. 格式 格式一: Do While <条件> [<语句组1>] [Exit Do] [<语句组2>] Loop 格式二: Do Until <条件> [<语句组1>] [Exit Do] [<语句组2>] Loop
12

第 六 章

循 环 结 2. 功能 构 使用While <条件>: 程 序 使用Until <条件>: 设 计

格式三: Do [<语句组1>] [Exit Do] [<语句组2>] Loop While <条件>

格式四: Do [<语句组1>] [Exit Do] [<语句组2>] Loop Until<条件>

条件为True时,执行循环体 条件为False时,退出循环 条件为False时,执行循环体 条件为True时,退出循环 格式一、二:在循环起始处判断条件,为当型循环 格式三、四:在循环终止处判断条件, 为直到型循环 13

第 六 章 循 环 结 构 程 序 设 计

3.说明 (1)Exit Do语句用于退出循环体 (2)也可以在Do语句和Loop语句之后都没有条件, 这时在循环体内必须有强行退出循环的语句 (3)多数情况下,当型循环和直到型循环可互相代替 【例6-4】求12+22+32+42+…小于某数N的最大值,N 由用户指定。设计界面下图:

Text1 Command1

Text2
14

第 六 章 循 环 结 构 程 序 设 计

Private Sub Command1_Click() Dim n As Long , S As Long N = Val(Text1.Text) 初始化 I = 0 S=0 Until S >= N 循环条件 Do While S < N

I=I+1 循环体 S=S+I*I Loop Text2.Text= S – I * I End Sub

While S < N

思考:求12+22+32+42+…大于或等于某数N的最小值
15

【例6-5】求 1 ?
第 六 章 循 环 结 构 程 序 设 计

1 1 1 1 ? 2 ? 2 ??? 2 2 3 5 7 n

直至最后一项的值≤10-4为止。 分析: 用N表示每一项的分母(N=1、3、5…) 用Term表示每一项的值,则Term=1/N

用Sum表示累加和
循环初始条件: N=1,Sum=0

循环终止条件: Term<=0.0001

16

第 六 章 循 环 结 构 程 序 设 计

Private Sub Form_Click() N = 1:Sum = 0 Do Term = 1 / (N * N) Sum = Sum + Term N=N+2 Loop Until Term <= 0.0001 Form1.FontSize = 12 ' 设窗体的字体 CurrentY = 200 '设当前显示位置 Print "运算结果为:"; Sum Print "最后一项的值为:"; Term End Sub
17

第 六 章 循 环 结 构 程 序 设 计

【例6-6】已知某乡镇企业现有产值和年增长率, 试问多少年后,该企业的产值可以翻一番。翻一 番后实际产值是多少? 分析: P—现有产值 R—年增长率 Y—年 V—增长后的产值,初始值为P 累乘: V=P(1+R)(1+R)… 退出循环条件 V>=2P
Text1
Text2 Text3 Text4
18

第 六 章 循 环 结 构 程 序 设 计

Private Sub Form_Click() P = Val(Text1.Text) R = Val(Text2.Text) / 100 V = P:Y = 0 Do Until V >= 2 * P Y=Y+1 V = V * (1 + R) Loop Text3.Text = Y Text4.Text = Format(V, "0.00") End Sub

19

【例6-7】给出两个正整数M、N,求它们的最大 公约数和最小公倍数。 第 六 章 循 环 结 构 程 序 设 计 分析: 求最大公约数的方法如下

(1) 以M作被除数,N作除数,求余数R。
(2) 如果R不为零,则将除数N做为新的被除数M, 将余数R做为新的除数N,再进行相除,得到 新的余数R。 (3) 如果R仍不等于0,则重复上述步骤(2)。如果R 为零,则这时的被除数N就是最大公约数。 最小公倍数为两个数的积除以它们的最大公约数。
20

设计界面如下图所示: 第 六 章 循 环 结 构 程 序 设 计

Text1
Text2

Label3
Label4

21

第 六 章 循 环 结 构 程 序 设 计

Dim A As Integer, B As Integer, N As Integer, _ M As Integer, R As Integer Private Sub Command1_Click() M = Val(Text1.Text):N = Val(Text2.Text) A = M:B = N R = M Mod N Do While R <> 0 M=N N=R R = M Mod N Loop Label3.Caption = N End Sub Private Sub Command2_Click() Label4.Caption = A * B / N End Sub

22

【例6-8】给一个整数n(n>=3),判断它是否是素数 第 六 章 循 环 结 构 程 序 设 计 分析:将数N被2—SQR(N)间全部整数除,如果都除 不尽,则N是素数,否则N不是素数。 设标志 变量Flag,只要有一个被整除,就置为1。

23

第 六 章 循 环 结 构 程 序 设 计

Private Sub Command1_Click() N = Val(Text1.Text) : K = Int(Sqr(N)) : I = 2 Flag = 0 Do While I <= K And Flag = 0 If N Mod I = 0 Then Flag = 1 Else I = I + 1 Loop If Flag = 0 Then Label1.Caption = "是素数" Else Label1.Caption = "不是素数" End If End Sub
24

6.3
第 六 章 循 环 结 构 程 序 设 计

循环的嵌套

在一个循环体内又完整地包含另一个循环,称为 循环的嵌套(或多重循环) 例: For I = 1 To 3 For J = 5 To 7 Print I, J Next J 例: For I = 1 To 3 For J = 1 To I For K = -1 To -2 S=S+I+J+K Next K Next J Next I 执行过程: ……

Next I
执行过程: ……

25

第 六 章 循 环 结 构 程 序 设 计

说明 (1) 嵌套的循环可以是For…Next循环,也可以是 Do…Loop循环 (2) FOR循环有一个公共端点,可使用一个NEXT语 句,循环变量按从内到外排列 例: FOR I=1 TO 3 FOR I=1 TO 3 FOR J=5 TO 7 FOR J=5 TO 7 PRINT I,J PRINT I,J NEXT J NEXT J,I NEXT I (3) 内外循环不应交叉 例: FOR I=... FOR J=... NEXT I NEXT J
...
26

第 六 章 循 环 结 构 程 序 设 计

(4) 嵌套循环应选用不同的循环变量 例: FOR I=1... FOR J=... ... NEXT J ... FOR J=... ... NEXT J NEXT I

27

第 六 章 循 环 结 构 程 序 设 计

【例6-9】求1+(1+2)+(1+2+3)+…(1+2+3+…+n), n由用户输入。 分析: …… Private Sub Form_Click() N = Val(Text1.Text) Sum = 0 For I = 1 To N Sum1 = 0 For J = 1 To I Sum1 = Sum1 + J Next J Sum = Sum + Sum1 Next I Text2.Text = Sum End Sub 28

第 六 章 循 环 结 构 程 序 设 计

【例6-10】公鸡5个钱一只,母鸡三个钱一只、小 鸡一个钱三只,要用100个钱买100只鸡,问公鸡、 母鸡、和小鸡各买几只? 分析: …… Private Sub Form_Click() Dim I As Integer, J As Integer, K As Integer Print Tab(5); "公鸡"; Tab(15); "母鸡"; Tab(25); _ "小鸡" For I = 0 To 20 For J = 0 To 33 For K = 0 To 100 Step 3 If I*5+J*3+K\3=100 And I+J+K=100 Then Print Tab(5); I; Tab(15); J; Tab(25); K End If Next K, J, I End Sub
29

【例6-11】数字灯谜。有算式: 第 六 章 循 环 结 构 程 序 设 计 ABCD -) C D C ABC A、B、C、D为非负一位数字,要求找出满足 以上算式的A、B、C、D。 答案: 1098 1 0 9 8 9 8 9 1 0 9
30

第 六 章 循 环 结 构 程 序 设 计

Private Sub Form_Click() Dim A As Integer, B As Integer, C As Integer, _ D As Integer Dim S1 As Integer, S2 As Integer, S3 As Integer For A = 1 To 9 For B = 0 To 9 For C = 1 To 9 For D = 0 To 9 S1 = A * 1000 + B * 100 + C * 10 + D S2 = C * 100 + D * 10 + C S3 = A * 100 + B * 10 + C If S1 - S2 = S3 Then Print A; B; C; D End If Next D, C, B, A End Sub
31

本章小结
1. For…Next循环结构 第 六 章 循 环 结 构 程 序 设 计 For <循环变量>=<初值> To <终值> [Step <步长>] <语句组1> [Exit For] <语句组2> Next [<循环变量>]

32

2. Do…Loop循环结构
第 六 章 循 环 结 构 程 序 设 计 Do [{While|Until}<条件>] [<语句组1>] [Exit Do] [<语句组2>] Loop Do [<语句组1>] [Exit Do] [<语句组2>] Loop [{While|Until}<条件>]
33


更多相关文档:

VB教程---循环结构_图文.ppt

VB教程---循环结构_计算机软件及应用_IT/计算机_专业资料。循环结构在Visual Basic程序的三种结构中,循环...

vb教程,循环结构_图文.ppt

vb教程,循环结构 - 第6 章 Visual BASIC 程序设计 循环结构程

VB教程---循环结构分析_图文.ppt

VB教程---循环结构分析 - 循环结构 在Visual Basic程序的三种结构中,循环结构是 教学课件 一种重要结构。 ...

vb教程,循环结构解析_图文.ppt

vb教程,循环结构解析 - 第 6章 Visual BASIC 程序设计 循环结

vb循环结构_图文.ppt

vb循环结构_工学_高等教育_教育专区。程序设计语言...VB教程---循环结构 27页 免费 VB五章控制结构-...

VB编程6.0 循环结构_图文.ppt

茂 名 院 学 循环结构程序设计 VB 程序设计循环...VB程序设计案例教程 第五... 26页 2下载券 喜欢...

[计算机软件及应用]vb循环结构_图文.ppt

[计算机软件及应用]vb循环结构 - 第4章:循环结构 主要内容: 1:循环结构 2:Do…Loop语句 3:For…Next语句 4:循环嵌套 5:列表框、组合框 小测验 ? 任意输入...

vb控制结构循环结构程序设计_图文.ppt

第6章 VB控制结构(2)循环结构程序设计 本章内容及要求:(1)掌握For

VB循环结构之Do循环语句的教学设计_图文.doc

VB循环结构之Do循环语句的教学设计_其它课程_高中教育_教育专区。高中信息技术,VB程序设计基础,循环结构,Do循环语句,教学设计,教案,do while...loop和do until.....

VB程序设计之循环结构1资料_图文.ppt

VB程序设计之循环结构1资料 - 随堂练习 ? 执行以下程序段后,整型变量c的值

VB循环结构程序设计_图文.ppt

VB循环结构程序设计_计算机软件及应用_IT/计算机_专业资料。3.3 循环语句 ? ? ? ? 程序的另一种结构是循环结构 循环结构作用是重复执行一段程序 循环是有条件...

vb控制结构-循环结构程序设计_图文.ppt

第6章 VB控制结构(2)循环结构程序设计 本章内容及要求:(1)掌握For

vb第5章循环结构程序设计_图文.ppt

vb第5章循环结构程序设计_工学_高等教育_教育专区。 ? ? 心理专家与经济学家...VB教程第5章循环结构程序... 60页 3下载券 VB最好的教程第5章-设计.....

VB教学2.3.3_循环结构1(教科版)_图文.ppt

VB教学2.3.3_循环结构1(教科版) - 2.3 程序的基本结构 2.3.3 循环结构 ? 假如你从今年开始,第一...

VB第六章 循环结构_图文.ppt

VB第六章 循环结构 - 第6章 循环结构 引例 例6-1:在窗体上显示1到10

vb教程,分支结构_图文.ppt

vb教程,分支结构 - 第5 章 Visual BASIC 程序设计 选择结构程序设计 本章要点: 条件语句 ? 单行结构条件...

vb循环结构_图文.ppt

Loop语句 3:For…Next语句 4:循环嵌套 5:列表框、组合框 小测验 ? 任意输入...vb教程,循环结构 33页 2下载券 VB For循环结构 7页 1下载券 VB循环结构...

vb-for循环说课稿_图文.ppt

vb-for循环说课稿_电脑基础知识_IT/计算机_专业资料。 一、教材 教材选用 教学目标 教学内容 教学重点和...

vb学习教程第五章_图文.ppt

vb学习教程第五章 - 第5章 循环结构 在前面,我们学习了顺序结构和分支结构,本章 我们将要介绍结构化程序3种基本结构的最后一种 循环结构。 退出 5.1 ...

vb-FOR循环说课稿_图文.ppt

它是在学生掌握了VB 语言的语 法基础、程序的顺序结构和选择结构之后,对 循环...( 分钟) 2、新课教学:( 分钟) :(35分钟 、新课教学:( 分钟) 3、课堂...

更多相关标签:
网站地图

文档资料共享网 nexoncn.com copyright ©right 2010-2020。
文档资料共享网内容来自网络,如有侵犯请联系客服。email:zhit325@126.com