当前位置:首页 >> 其它课程 >>

VB 第六章 循环结构 2


程序设计基础(VB)
主讲人:孟永伟

Email:ywmeng@yahoo.cn

第六章

循环结构

教学基本要求
? 掌握循环语句的嵌套及选择。

? 掌握For、Do循环语句的语法结构及使用情况;

教学内容
6.1 6.2 6.3 6.4 6.5 6.6 For循环语句 For循环语句的嵌套 For循环语句应用举例 Do…Loop循环语句 Do…Loop循环语句的嵌套 Do…Loop循环语句应用举例

主要知识点与重点
? For循环语句;
? Do…Loop循环语句。

6.4 Do…Loop 循环语句
在循环进行之前不知道循环次数,只知道循环 的终止条件,可以用Do…Loop循环。Do循环具有 更强的灵活性,它可以根据需要决定是条件满足时 执行循环体,还是一直执行循环体直到条件满足。

6.4 Do…Loop 循环语句
格式 1
Do [{while|until} 条件] 循环体 [Exit Do] Loop

格式 2
Do 循环体 [Exit Do] Loop [{while|until} 条件]

格式 3
Do 循环体 Loop

说明:
? ? ? ? Do,Loop及While,Until都是关键字。 循环体:需要重复执行的一个或多个语句。 条件:是一个逻辑表达式。 Exit Do:表示退出循环。

6.4 Do…Loop 循环语句
格式 1
Do while 条件 循环体 [Exit Do] Loop
Do until 条件 循环体 [Exit Do] Loop

先判断条件,再执行循环体;若条件不满足,循环体执行0次。

6.4 Do…Loop 循环语句
例题: i=10 Print “Value of i at beginning of loop is”; i Do While i<10 i=i+1 Loop Print “Value of I at end of loop is”; i 由于i=10,条件不为True,因此不执行循环体。 输出结果: Value of i at beginning of loop is 10 Value of I at end of loop is 10

6.4 Do…Loop 循环语句
例题: i=10 Print “Value of i at beginning of loop is”; i Do Until i>=10 i=i+1 Loop Print “Value of I at end of loop is”; i 由于i=10,条件为True,因此不执行循环体。 输出结果: Value of i at beginning of loop is 10 Value of I at end of loop is 10

格式 2
Do

6.4 Do…Loop 循环语句
Do 循环体 [Exit Do] Loop until 条件

循环体 [Exit Do] Loop while 条件

先执行循环体,再判断条件;无论条件是否满足,循环体至 少执行一次。

6.4 Do…Loop 循环语句
例题: i=10 Do Print “Value of i at beginning of loop is”; i i=i+1 Loop While i<10 Print “Value of I at end of loop is”; i 输出结果: Value of i at beginning of loop is 10 Value of I at end of loop is 11

6.4 Do…Loop 循环语句
例题: i=10 Do Print “Value of i at beginning of loop is”; i i=i+1 Loop Until i>=10 Print “Value of I at end of loop is”; i 输出结果: Value of i at beginning of loop is 10 Value of I at end of loop is 11

6.4 Do…Loop 循环语句
格式 3
Do 循环体 Loop

注意: 循环结构仅由Do…Loop关键字构成时,表示无条件循环, 这时循环体内必须存在Exit Do(或Goto)语句,以控制循环 体,否则会出现死循环。

6.4 Do…Loop 循环语句
例题:求n!的程序片断为 :

N=Val(InputBox(“n=”)) Result=1 i=1 Do Result =Result * i i=i+1 If i> N Then Exit Do Loop

说明
① 对使用While的语句,当条件满足时(True)执行循环体; ② 对使用Until的语句,当条件不满足时(False)执行循环体; ③ Do和Loop必须成对出现,否则将出现编译错误; ④ 循环体中应存在改变循环条件的语句,以避免死循环的出现。 ⑤ Do循环也可能陷入“死循环”。在这种情况下,可以用Exit

Do 语句跳出循环。

6.5 Do…Loop循环语句的嵌套
在一个循环体内又包含了一个完整的循环,这样的结构 称为多重循环或循环的嵌套。在程序设计时,许多问题要用二 重或多重循环才能解决。我们前面学过的For循环、Do循环都 可以互相嵌套,如在For…Next的循环体中可以使用Do循环, 而在Do…Loop的循环体中也可以出现For循环等。 二重循环的执行过程是外循环执行一次,内循环执行一 遍,在内循环结束后,再进行下一次外循环,如此反复,直到 外循环结束。

6.5 Do…Loop循环语句的嵌套
一般格式: Do While/Until … For J=… . . . Next J … Loop 一般格式: Do While/Until … Do While/Until … . . . Loop … Loop

6.5 Do…Loop循环语句的嵌套
一般格式: Do … For J=… . . . Next J … Loop While/Until 一般格式: Do … Do . . . Loop While/Until … Loop While/Until

6.6 Do…Loop循环语句应用举例
例题 6.6.1 我国有13亿人口,按人口年增长0.8%计算, 多少年后我国人口超过26亿
分析:解此问题两种方法,可根据公式:26=13*(1+0.008)n 直接利用标准对数函数求 得;也可利用循环求得,程序如下: Private Sub Form_Click() x = 13 n=0 Do While x < 26 x = x * 1.008 n=n+1 Loop Print n, x End Sub

演示6.6.1

6.6 Do…Loop循环语句应用举例
例题 6.6.2 利用InputBox函数输入两个整数,求它们的 最大公约数和最小公倍数。

分析:
求最大公约数可用辗转相除法,该方法的算法思想: ① 对于已知两数m,n,使得m>n。 ② M除以n得余数r。 ③ 若r≠0,则令m←n,n←r,继续相除得到新的r;直到r=0求得最大公约数,结束。

6.6 Do…Loop循环语句应用举例
例题 6.6.2 利用InputBox函数输入两个整数,求它们的 最大公约数和最小公倍数。 例题:当m=30,n=8时,辗转相除法过程如下:
m 30 8 6 n 8 6 2 r 6 2 0

演示6.6.2

6.6 Do…Loop循环语句应用举例
例题 6.3.3 求自然对数的底e得近似值,要求其误差小于 0.00001,求e近似值的公式为:
e ?1 ?

分析:本例涉及程序设计中两个重要的运算:累加
乘 。由于循环次数未知,可用Do来实现。

和连

演示6.6.3

6.6 Do…Loop循环语句应用举例
例题 6.6.4 输入一批非负数,当输入的数据为负数时, 表示输入结束。求这批非负数的最大值、最小值和平均 值。
分析: 因为输入数据个数不一定,所以应采取Do/Loop结构。将最大和最小值都初始 化为第一个数。

演示6.6.4

6.7 定时器、滚动条控件
滚动条
用途: 通常附在窗体上协助观察数据或确定位置,也可用于数据输入工 具,用来提供某一范围内的数值供用户选择。

注意:滚动条是一个独立的控件,它有自己的事件、方法和属性集。文本 框、列表框和组合框内部在特定情况下都会出现滚动条,但它们属于这些 控件的一部分,不是一个独立的控件。

6.7 定时器、滚动条控件
主要属性
① ② Value属性:返回或设置滚动条的当前位置,其返回值始终为介于 Max和Min属性值之间的整数。 Max、Min属性:使用滚动条作为数量或速度的指示器、输入设备 时,可以利用Max和Min属性设置控件Value属性变化范围。

③ LargeChange、SmallChange属性 LargeChange属性返回或设置当用户单击滚动条和滚动箭头之间 的区域时,滚动条控件Value属性值的改变量。 SmallChange属性返回或设置当用户单击滚动箭头时,滚动条控 件Value属性值的改变量。LargeChange与SmallChange属性取值范 围是1~32767之间的整数,包括1和32767,默认设置值均为1。

6.7 定时器、滚动条控件
Scroll事件与Change事件的区别在于:
当滚动条控件滚动时Scroll事件一直发生,而Change事件只在滚动 结束之后才发生一次。

6.7 定时器、滚动条控件
定时器
? 定时器控件利用计算机内部的时钟,有规律地定时执行指定的操作, 常常用于编写不需要与用户交互就可直接执行的代码,如计时、倒计 时、动画等。 ? 定时器控件的缺省名称为Timer1、Timer2、…,微软建议定时器名 称的前缀为:tmr

定时器的大小是不可改变的,并且程序运行时不可见, 因此,它没有大小、位置以及Visible属性,在界面设计时 可以放置在窗体的任何位置。

6.7 定时器、滚动条控件
主要属性
① Enabled属性:用于决定定时器控件是否随时间的推移,在到达时间 间隔时响应Timer事件。当Enable属性值为True(缺省值)时,激活定 时器开始计时;当Enable属性值为False时,定时器处于休眠状态、 不计时。 Interval属性:用于设定定时器触发Timer事件的事件间隔,单位为毫 秒。它的取值范围0~65535,1000代表1秒,缺省值为0,此时,定时 器不起作用。如果一个窗体中有多个定时器控件,它们各自的时间间 隔是相互独立的。



6.7 定时器、滚动条控件
定时器的Timer事件
定时器控件只响应一个事件,即Timer事件。当Enable属性值为True 且Interval属性值大于0时,该事件以Interval属性指定的时间间隔发生。

6.7 定时器、滚动条控件
例如:数字时钟

1、界面设计: 添加标签Label1、Label2和一个定时器Timer1,并设置两个标签框的 AutoSize属性值为True,定时器Timer1的Interval属性值为1000。

6.7 定时器、滚动条控件
2、过程设计: 程序运行时,调用当前的系统时间,在窗体上显示数字钟,并每秒钟 更新时间内容。

Private Sub Timer1_Timer() Label1.Caption = "当前时间是:" & Hour(Time) & "时" &

Minute(Time) & "分" & Second(Time) & "秒" Label2.Caption = "当前日期是:" & Date End Sub

6.7 定时器、滚动条控件
例:滚动字幕 1、界面设计: 窗体上添加Label1、Timer1和Command1,并设置定时器Timer的 Interval属性值为100。

6.7 定时器、滚动条控件
2、过程设计: 程序运行后,标签从左向右移动,移出窗体右边界后重新从窗体的左边进入。 Private Sub Command1_Click() If Command1.Caption = "开始" Then Timer1.Enabled = True Command1.Caption = "停止" Else Timer1.Enabled = False Command1.Caption = "开始" End If End Sub Private Sub Timer1_Timer() If Label1.Left <= Form1.Width Then Label1.Left = Label1.Left + 100 Else Label1.Left = 0 End If End Sub

THE END


相关文章:
VB 第六章 循环结构 2_图文.ppt
VB 第六章 循环结构 2 - 程序设计基础(VB) 主讲人:孟永伟 Email:ywmeng@yahoo.cn 第六章 循环结构 教学基本要求 ? 掌握循环语句的嵌套及选择。 ?...
VB第6章循环结构.doc
第六章循环结构 计算机专业第六章循环结构 VB 试题班级:___考号:___姓名:_...下列能正确实现 上述功能的程序是( )(2 分) B、label1.name=list1.list...
VB 第六章 循环结构 1_图文.ppt
VB 第六章 循环结构 1_其它课程_高中教育_教育专区。程序设计基础(VB)主讲人...演示6.1.2 6.2 For循环语句的嵌套在一个循环体内又包含了一个完整的循环,...
vb循环结构2.ppt
vb循环结构2 - 第六章 循环结构 经典错误: 经典错误 输出100200之
VB循环结构二_图文.ppt
VB循环结构二 - 在VB中,有如下程序段,该程 序段执行后,变量x的值是 ( 6 ) 1、i=1,x=0+1=1 x=0 2 、 i=2,x=1+2=3 for i=1 to 3 x=x...
教案(2)VB-For循环结构(2)_图文.ppt
教案(2)VB-For循环结构(2) - 第七章控制结构 7.2循环程序结构 7.2.1For循环() 复习习题 1.表达式Int(8*sqr(36)*10^(-2)*10+0.5)/1...
第六章循环结构_图文.ppt
第六章循环结构_工学_高等教育_教育专区。vb 教程 ppt 课件 第6章 循环结构 退出 6.1 循环概述 6.2 For循环 6.3 Do循环 6.4 循环的嵌套 6.5 循环的退出...
6第六章循环结构.ppt
s=s+1 循环体 VB提供了丰富的实现循环结构的语句:第六章循环结构程序设计 1)While … Wend语句 2)Do语句 3)For语句 4)Goto语句 这就是VB循环结构的...
vb第6章_图文.ppt
vb第6章_IT认证_资格考试/认证_教育专区。第6 章 Visual BASIC 程序设计 ...10 6.2 Do…Loop循环结构 第六章循环结构程序设计 问题: 求12+22+32+42+...
VB程序设计第2版第6章_图文.ppt
VB程序设计第2第6章 - 第六章循环结构程序设计 第6 章 循环结构程序设计
vb第六章.ppt2_图文.ppt
vb第六章.ppt2 - 重复是学习之母。 重复是学习之母。 狄慈根 狄慈根 第六章 循环控制结构 学习重点 ?1、循环的概念及其要素 、 ?2、具体的循环...
vb教程,循环结构_图文.ppt
循环结构| vb教程,循环结构_计算机软件及应用_IT/计算机_专业资料。vb教程,循环...X=6 For K = 1 To 10 Step -2 X=X+K Next K Print K,X 6 第六章...
VB程序设计第2版第6章_图文.ppt
VB程序设计第2第6章 - 第六章循环结构程序设计 第6 章 循环结构程序设计
VB(FOR循环)_图文.ppt
VB(FOR循环)_工学_高等教育_教育专区。VB(FOR循环) 第6 第6节 Visual ...第 6 4.6 For…Next循环结构语句 2、For…next循环的执行: For 循环变量=...
VB程序设计第3版第6章_图文.ppt
VB程序设计第3版第6章_其它_高等教育_教育专区。VB第六章 第6 章第 六章...3)重复步骤 2),直到输出所有的数。 12 流程图: 1?A,1?B 第六章循环结构...
vb-4-循环结构程序设计_图文.ppt
False True 第一章 第二章 第三章 第四章 第四章 第五章 第六章 第七章 第八章 第九章 第十章 第十一章 VB程序设计 用For-Next语句实现循环结构 1. ...
计算机基础vb_图文.ppt
第六章 VB控制结构 6.1 选择控制结构 6.2 多分支控制结构 6.3 循环结构 6.4 GoTo型控制 算法概述什么是算法:广义地讲:算法是为完成一项任务所应当遵循的 一...
vb循环结构4_图文.ppt
vb循环结构4 - 第六章 循环结构 6.4 算法举例 x = Val(InputBox(请输入一个大于2的数! Do While k <= 100的数m,判断是否为素数。 例从键盘输入一个...
vb循环结构1_图文.ppt
vb循环结构1_IT/计算机_专业资料。vb 第六章 循环结构 Do While…Loop循环...(2) 当条件成立时执行循环,条件不成立时退出 当条件成立时执行循环, 循环,...
VB 12级课件第6章-3(7-1,2,3学时、8-1,2,3学时)北邮解....ppt
VB 12级课件第6章-3(7-1,2,3学时、8-1,2,3学时)北邮解析_幼儿读物_幼儿教育_教育专区。VB 12 Visual Basic程序设计 Visual Basic 循环结构(1)(第7次...
更多相关标签: