第5章 基本的控制结构(循环).ppt

  1. 1、本文档共43页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 基本的控制结构(循环)

Visual basic 第五章 基本的控制结构(二) 5.3.2 While循环 For…Next循环,适用于循环次数能够确定的情况。 对于只知道控制条件,但不能确定循环次数的情况,可以使用While循环。 5.3.3 Do循环 与While循环相比,Do循环具有更强的灵活性,它可以根据需要决定是条件满足时执行循环体,还是一直执行循环体直到条件满足。Do循环有两种语法形式。 值得注意的是,关键字While?用于指明条件成立时执行循环体,直到条件不成立时结束循环(如图2-3、2-5所示) Until则正好相反,条件不成立时执行循环体,直到条件满足才退出循环(如图2-4、2-6所示)。 5.3 4 循环的嵌套 在一个循环体内又包含了一个完整的循环,这样的结构称为多重循环或循环的嵌套。 For循环、While循环、Do循环可以互相嵌套 二重循环的执行过程是外循环执行一次,内循环执行一遍,在内循环结束后,再进行下一次外循环,如此反复,直到外循环结束。 5.3.5 循环的退出 在某些情况下,为了减少循环次数或便于程序调试,可能需要提前强制退出循环。VB为For…Next和Do…Loop循环语句提供了相应的强制退出循环的语句。 例5:求1+2+3+…+100的和 程序代码如下: Private Sub Command1_Click() Dim s%, m% m= 1 s = 0 Do While m = 100 s = s + m m= m + 1 Loop label2.caption=s End Sub 例:求两自然数m,n的最大公约数 设计思想: (1)m除以n得到余数r; (2)若r=0,则n为要求的最大公约数,算法结束;否则执行(3); (3)n→m,r→n,再转到(1)执行。 程序代码如下: Private Sub command1_Click() Dim m%, n%, r% m = Val(Text1.Text) n = Val(Text2.Text) r = m Mod n Do Until r = 0 m = n n = r r = m Mod n Loop Label1.Caption = 它们的最大公约数是 n End Sub 例:打印九九乘法表。 分析:打印九九乘法表,只要利用循环变量作为乘数和被乘数就可以方便的解决。 程序如下: Private Sub Form_Click() Dim i%, j%, str$ Print Tab(35); 九九乘法表 For i = 1 To 9 For j = 1 To 9 str = i × j = i * j Print Tab((j - 1) * 9 + 1); str; Next j Print Next I End Sub 图5-7 “九九乘法表”运行结果 循环嵌套要注意以下事项: (1)在多重循环中,各层循环的循环控制变量不能同名。但并列循环的循环控制变量名可以相同,也可以不同。 (2)外循环必须完全包含内循环,不能交叉。 下面的循环代码正确吗? For I=1 To 100 For I=1 To 100 For J=1 To 10 For I=1 To 10 …… …… Next I Next I Next J Next I (a)内外循环交叉 (b)内外循环控制变量同名 例:输出指定区域间所有的素数(如100至300) 程序如下: Private Sub Command1_Click() Dim a%, b%, i% a = Val(Text1.Text) b = Val(Text2.Text) Do While a = b For i = 2 To a - 1 If a Mod i = 0 Then Exit For End If Next i If i = a Then Label2.Caption = Label2.Caption a End If a = a + 1 Loop End Sub * * * 结束 * 程序设计 第五章(2) 循环概述 5.3 For循环 5.3.1 W

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档