Visual basic 第六章循环程序结构 主要内容 ° For Next语句 列表框 Do.Loop循环语句·组合框 万博科技职业学院
Visual Basic 第六章 循环程序结构 • For...Next 语句 • Do…Loop 循环语句 • 列表框 • 组合框 主要内容 万博科技职业学院
科,技照业学院 For…Next循环语句 格式: Forto[step]出 必须是数值型变量 程序设计 步长可正可负,也可以带小数,缺省值为1 当计数器达到或超过终值时,终止循环。 可用 Exit For语句强行中止循环
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. For …Next 循环语句 • 格式: For = to [step ] Next • 注: – 必须是数值型变量 – 步长可正可负,也可以带小数,缺省值为1 – 当计数器达到或超过终值时,终止循环。 • 可用 Exit For 语句强行中止循环 例
科,技照业学院 For.Next循环的流程图 计数器=三to[step (For语句) Next 计数超过终值? Yes No 如果在循环体中遇到 语句块(循环体)Ⅲ 程序设计 Exit For语句,则强行设 中止循环 计数器加上步长 (Nex语句) Next的下条语句
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. For…Next循环的流程图 计数超过终值? 计数器加上步长 (Next语句) 语句块(循环体) No Yes Next的下条语句 如果在循环体中遇到 Exit For 语句,则强行 中止循环 计数器= 保存终值和步长 (For语句) For = to [step ] Next
科,技照业学院 例1:求100以内所有奇数之和 计算:S=1+3+5+7+99 S用于保存累计值,初值为0 FOrK=1to100step2K-计数器,步长2 S=S+K K=1,3,5,,99 Next K 程序设计 K+2(步长),再执行循环语句设 直到K>=100(终值) Print“100以内所有奇数之和为“;S输出结果
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. 例1:求100以内所有奇数之和 S=0 ‘ S用于保存累计值,初值为0 For K = 1 to 100 step 2 ‘K-计数器,步长2 S = S + K ‘K=1,3,5,…,99 Next K ‘K+2(步长),再执行循环语句 ‘直到K>=100(终值) Print “100以内所有奇数之和为“; S ‘输出结果 计算:S=1+3+5+7+……+99
科,技照业学院 例2:输出图案(P110,例6-7) Fori=1To5对1~5行 Print tab(5+i);跳到第5+i列 Print String(6-i,“★”),打印6-个★ 输出6个空格,i个▲ 程 序 Print Spc(6); String(1," 输出图案 再输出6个空格,6-个☆ ★★★★★ ★★★ Print Spc(6); String(6-1, "A") 急警 Next i 注意、Spc和Sg函数的用法区
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. 例2:输出图案(P110,例6-7) For i = 1 To 5 ‘对1~5行 Print Tab(5 + i); ‘跳到第5+i列 Print String(6 - i, “★”); ‘打印6-I个★ ‘输出6个空格,i个▲ Print Spc(6); String(i, “▲”); ‘再输出6个空格,6-i个☆ Print Spc(6); String(6 - i, "☆") Next i 注意Tab、Spc和String函数的用法
科,技照业学院 例3:二重循环实例:九九乘法表 For m=1 to 9 Forecolor-vbRed print m; Forecolor-vbBlue For n=l To m .九九乘法表 56786网 Print tab(n*4);m米n; 11 224 程序设计 Next n 4481216 551015202 661218243036 Print"换行 77142128354249 8816243240485664 27364554637281 Next m
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. 例3:二重循环实例:九九乘法表 For m = 1 To 9 Forecolor=vbRed print m; Forecolor=vbBlue For n = 1 To m Print Tab(n*4); m*n; Next n Print '换行 Next m
科,技照业学院 For each.Next循环 For each.Next循环是以对象集合中的每 个元素作为重复依据的如果不知道一个集合有 多少元素, For each.Next循环非常有用。 语法格式: For eachIn
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. For Each...Next循环 For Each...Next 循环是以对象集合中的每一 个元素作为重复依据的,如果不知道一个集合有 多少元素, For Each...Next 循环非常有用。 语法格式: For Each In 语句块 Next
科,技照业学院 例:移动窗体中所有控件 Controls Private Sub form Click Dim obl as object For each obl In Controls ob1.Left obl,Left +20 程序设计 Next ob1 End sub
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. 例:移动窗体中所有控件 (Controls) Private Sub form_Click() Dim ob1 As Object For Each ob1 In Controls ob1.Left = ob1.Left + 20 Next ob1 End Sub
科,技照业学院 Do.Loop语句 前 Do While Loop LOop 后|Do DO 型 程序设计 Loop While Untl相当于 While not 可用 Exit do中止循环
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. Do…Loop语句 Do While Loop Do Loop While Do Until Loop Do Loop Until Until 相当于 While not 可用 Exit Do 中止循环 前 测 型 后 测 型
科,技照业学院 前测型与后测型的比较 先测试 至少执 No 条件 行一次 语句块 Ye 语句块 条件 Yes No Loop的下条语句 oop的下条语句 程序设计 前测型 Do While 后测型Do oop Loop While
■ Visual BASIC 程 序 设 计 万 博 科 技 职 业 学 院 Wanbo Inst. Of Since & Tech. 前测型与后测型的比较 条件 语句块 Loop的下条语句 前测型 Do While Loop 后测型 Do Loop While 条件 语句块 Loop的下条语句 Yes Yes No No 先测试 至少执 行一次