VB程序 循环结构、列表框和组合框ppt课件.ppt

上传人:小飞机 文档编号:1377179 上传时间:2022-11-16 格式:PPT 页数:49 大小:944.50KB
返回 下载 相关 举报
VB程序 循环结构、列表框和组合框ppt课件.ppt_第1页
第1页 / 共49页
VB程序 循环结构、列表框和组合框ppt课件.ppt_第2页
第2页 / 共49页
VB程序 循环结构、列表框和组合框ppt课件.ppt_第3页
第3页 / 共49页
VB程序 循环结构、列表框和组合框ppt课件.ppt_第4页
第4页 / 共49页
VB程序 循环结构、列表框和组合框ppt课件.ppt_第5页
第5页 / 共49页
点击查看更多>>
资源描述

《VB程序 循环结构、列表框和组合框ppt课件.ppt》由会员分享,可在线阅读,更多相关《VB程序 循环结构、列表框和组合框ppt课件.ppt(49页珍藏版)》请在三一办公上搜索。

1、1,第五章 循环结构、列表框和组合框,5.1 循环语句 5.2 循环嵌套 5.3 列表框和组合框,2,5.1 循环语句,5.1.1 ForNext结构,For 循环变量=初值 To 终值 Step 步长 Exit ForNext 循环变量,具体格式:,3,(1)计算初值、终值及步长表达式的值,并将初值赋给循环变量;(2)判断循环变量的值是否“超过”终值:当步长为正时,“超过”是指循环变量的值终值;当步长为负时,“超过”是指循环变量的值终值;若“超过”时,退出循环,转到Next语句的下一语句;(3)执行循环体中的语句;(4)执行Next语句,循环变量增加一个步长;(5)返回第(2)步。,基本步骤

2、:,4,结构流程图,5,(1)“循环变量” 必须为数值型;(2)“初值”、“终值”为数值表达式,若值不是整数,系统会自动取整;(3)“步长”为数值表达式,可为正数,也可为负数,若值不是整数,系统会自动取整;分步长大于0、步长小于0、步长等于0这几种情况。步长等于1时,可省略Step子句;例如: For i10 To 1 Step 1 Print i Next i,注意事项:,6,(4)循环次数的计算公式: 循环次数Int(终值-初值)步长+1), 若所得为负数,则取循环次数0。(5)循环必须遵循“先检查、后执行”的原则。(6)Exit For语句。该语句允许在循环体内出现一次或多次。(7)Ne

3、xt后面的循环变量与For语句中的循环变量必须相同,且两者必须成对出现。(8)在For循环体中改变循环控制变量的值,将会影响循环次数。 例如: Dim s As Integer,i As Integer For i1 To 10 s=s+i ii+1 Next i,执行几次?,5次,7,例题:,1、单击窗体时,在窗体上打印输出5个“_”符号。,8,程序代码如下: Private Sub Form_Click() For i = 1 To 5 Print _ 循环体 Next i End Sub,9,2、通过循环变量的变化在窗体上输出彩色字,程序运行界面如图所示。,10,11,Private S

4、ub Form_Click() Dim i As Integer, green As Integer, blue As Integer Randomize Timer For i = 1 To 2000 Step 200 green = Int(255 * Rnd + 1) blue = Int(255 * Rnd + 1) CurrentX = 500 + i CurrentY = 500 + i ForeColor = RGB(i, green, blue) Print 欢迎来到VB世界 Next iEnd Sub,12,编写程序找出100999之间的所有“水仙花数”。所谓“水仙花数”是指

5、一个三位数,其各位数字的立方和等于该数本身。,13,Private Sub Form_Click() Dim x As Integer Dim y As Integer Dim z As Integer For i = 100 To 999 x = i 100 y = (i - x * 100) 10 z = i - x * 100 - y * 10 If x 3 + y 3 + z 3 = i Then Text1.Text = Text1.Text & & CStr(i) End If Next iEnd Sub,14,5.1.2 DoLoop结构,1、DoLoop语句2、Do While

6、Loop语句3、DoLoop While语句4、Do UntilLoop语句5、DoLoop Until语句,15,1、DoLoop语句,具体格式:,Do Exit DoLoop,其中,Exit Do语句是可选语句,它提供一种退出Do循环的方法,并且只能在Do循环中使用,可以在循环体任何位置放置任意多个Exit Do语句。根据所在位置,确定要退出的循环。,要有退出循环的语句,16,Dim n As Integer n0 Do n=n+1 If n10 Then Exit Do End If Loop,程序运行时,循环体语句nn+1被重复执行10次后,因执行语句If n10 Then Exit

7、Do End If时,满足条件n10,退出循环。,17,具体格式: Do While Exit Do Loop,2、Do WhileLoop语句,18,首先判断条件表达式的值是否为True。若为True,则执行循环体中的语句,当执行到Loop语句时,返回到Do While语句,继续判断条件表达式的值是否为True ;若为False,则退出循环,执行Loop后面的语句。如此反复执行,直到条件表达式的值为False才退出循环。,必须存在改变条件表达式的语句,19, Do、Loop、While都是关键字,Do While和Loop应成对出现; 条件表达式为关系或逻辑型,若为数值型,以0表示False

8、,非0表示True; Do WhileLoop语句是先判断条件后执行循环体,有可能一次也不执行; 遇到Exit Do语句时,将强制提前结束循环,执行Loop后的下一条语句,该语句允许在循环体内出现一次或多次。,注意事项:,20,3、Do Loop While语句,具体格式: Do Exit Do Loop While,21,首先执行一次循环体内的语句,执行到Loop while语句时,判断条件表达式的值是否为True。若为True,则返回到循环体的开始语句,再次执行循环体,这样一直到条件表达式的值为False时才退出循环。,必须存在改变条件表达式的语句,22,区别:Do While.Loop循

9、环先测试条件是否成立;Do.Loop While循环先执行一次循环体。,23,例如:程序段1: Dim n As Integer n=1 Do While n1 n=n+1 Loop Print n,程序段2:Dim n As Integer n=1 Do n=n+1 Loop While n1 Print n,输出结果为:1,输出结果为:2,24,4、Do UntilLoop语句,具体格式: Do Until Exit Do Loop,25,首先判断条件表达式的值是否为False。若是False,则执行循环体,当执行到Loop语句时,返回到Do Until语句,继续判断条件表达式的值是否为F

10、alse;若是True,则退出循环,执行Loop后面的语句。如此反复执行,直到条件表达式的值为True才退出循环。,26,例如:求s=1+2+3+100的值。,方法1:用Do WhileLoop语句实现的:,Dim n As Integer ,s As Integer n=1 s=0Do While n100 s=s+n n=n+1LoopPrint s,n=100,27,方法2:用Do UntilLoop语句实现的:,Dim n As Integer ,s As Integer n=1 s=0 Do Until n=100 s=s+n n=n+1 Loop Print s,n100,28,具

11、体格式: Do Exit Do Loop Until ,5、Do Loop Until语句,29,首先执行一次循环体内的语句,执行到Loop Until 语句时,判断条件表达式的值是否为False。若为False,则返回到循环体的开始语句,再次执行循环体,这样一直到条件表达式的值为True时才退出循环。,30,例【5-6】:编写程序在标签中显示1100之间既能被3整除又能被7整除的整数,并计算它们的和。要求用DoLoop While和DoLoop Until两种语句分别编写循环体部分。,31,编程思路:程序的循环次数是确定的,即从1到100。对于用DoLoop While语句编写循环体部分,W

12、hile后的条件表达式是满足条件执行循环,所以条件表达式是“n 100”。,32,Private Sub ComputeCmd _Click() Dim n As Integer, s As Integer Dim t As String n = 1:s = 0:t = Do If n Mod 3 = 0 And n Mod 7 = 0 Then t = t & Str(n) t = t & , s = s + n End If n = n + 1 Loop While n = 100 NumLabel.Caption = t SumLabel.Caption = sEnd Sub,33,Pr

13、ivate Sub ComputeCmd _Click() Dim n As Integer, s As Integer Dim t As String n = 1:s = 0:t = Do If n Mod 3 = 0 And n Mod 7 = 0 Then t = t & Str(n) t = t & , s = s + n End If n = n + 1 Loop Until n 100 NumLabel.Caption = t SumLabel.Caption = sEnd Sub,34,按下列公式计算:e=1+1/1!+1/2!+1/3!+1/n!+使1/n!小于0.000001

14、,Private Sub Form_Click() Dim e As Double Dim i As Integer Dim fact As Double Dim result As Long e = 0: i = 1: fact = 1: result = 1 Do fact = 1 / result e = e + fact result = result * i i = i + 1 Loop While fact 0.000001 Label1.Caption = Val(e)End Sub,35,S=1*(1+2)*(1+2+3)*(1+2+3+n)编程求S不大于20000时最大的n值

15、,36,Private Sub Form_Click() Dim sum As Long Dim s As Long Dim n As Integer sum = 0: s = 1: n = 0 Do n = n + 1 sum = sum + n s = s * sum Loop Until s 20000 Label3.Caption = Val(n - 1)End Sub,37,定义:在一个循环体中含有另一个循环结构,这就构成了循环的嵌套。以上几节介绍的循环语句都可以实现循环嵌套。两层的循环嵌套,称为二重循环,三层以上的循环嵌套,称为多重循环。,5.2 循环嵌套,38,(1) 对于For

16、Next的循环嵌套,在每层循环中的控制变量要使用不同的变量名。 (2) 内循环结构语句必须完整地嵌在外循环体中,不可交叉。DoLoop或ForNext语句需成对使用,Visual Basic会给每个循环结构结束语句(Loop或Next)匹配最近的循环结构开始语句(Do或For)。 (3) 多重循环执行时,外循环每重复执行一次,内循环则要完整地执行其应重复的次数。,注意事项:,39,例【5-8】:打印如图5-15所示的上三角的九九乘法表。,40,程序代码如下:Private Sub Form_Click() Dim s As String Print Tab(45); 九九乘法表 Print T

17、ab(45); = For i = 1 To 9 For j = 1 To i s = i Next j Print Next iEnd Sub,41,在窗体上打印星号“*”矩形,42,Private Sub Command1_Click() Dim n As Integer n = Val(Text1.Text) For i = 1 To n For j = 1 To n Print *; Next j Print Next iEnd Sub,43,5.3 列表框与组合框,1.常用属性(1) Columns属性:用于设置列表项排列的列数。 取值为0,按单列显示,垂直滚动条;取值为1,按单列显

18、示,水平滚动条;取值大于1,多列显示。(2) List属性:是一个字符型数组,用于存放列表框的选项内容,其元素与列表的选项相对应,下标从0开始。(3) ListCount属性:列表框中条目的个数,ListCount-1表示最后一项的序号。只能在程序中引用。,5.3.1 列表框,44,(4) ListIndex属性:表示运行时被选定的选项的序号(下标)。只能在程序中引用。(5) Selected属性:一个逻辑型数组,表示运行时对应选项被选中或未被选中。只能在程序中引用。(6) Sorted属性:列表框中的条目是否按字母顺序排列显示。只能在属性窗口设置。(7) Text属性:返回当前被选中项目的文

19、本内容。只能在程序中引用。(8) MultiSelect属性:设置能否多项选项以及如何进行选择。只能在属性窗口设置。(9) Style属性:设置控件外观。,45,2.常用方法(1) AddItem方法格式:列表框名AddItem ,下标说明:用于在列表框指定位置上添加一个新项目。如果下标省略,则把文本添加到列表框的尾部,下标范围从0到ListCount-1。(2) Clear方法格式:列表框名Clear说明:用于清除列表框中的全部内容。执行该方法后,ListCount重新被设置为0。,46,3.事件 列表框能够响应Click事件和DblClick事件。如果在Click事件中有代码,则DblCl

20、ick事件将永远不会被触发,因为Click事件是优先被触发的事件。,(3) RemoveItem方法格式:列表框名RemoveItem 说明:用于删除列表框中指定位置上的项目,下标必须小于ListCount-1,否则程序出错。,47,1.特有属性 (1) Style属性:决定组合框的类型和显示方式。 取值为0,下拉式组合框;取值为1,简单组合框,没有下拉箭头;取值为2,下拉列表式组合框。 (2) Text属性 获取组合框当前选定项目值的最简单最常用方法就是使用Text属性。组合框在运行时Text属性都与最后文本框中显示的文本相对应。该文本既可以是选中的列表项目,也可以是用户在文本框中输入的文本。,5.3.2 组合框,MultiSelect、Selected属性与列表框形同,48,2.事件组合框响应的事件与Style属性有关。Style=0时,能响应Click、Change和DropDown事件。Style=1时,能响应DblClick、Click和Change事件。Style=2时,只能响应Click和DropDown事件。,小结,本章主要介绍ForNext语句、DoLoop语句、Do WhileLoop语句、DoLoop While语句、Do UntilLoop语句和DoLoop Until语句。本章最后介绍了列表框和组合框的使用。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号