VB循环结构复习学案

VB循环结构复习学案
VB循环结构复习学案

主题:循环结构

一、考点点击:

1、学会使用循环结构设计程序的基本方法。

二、学习目标:

1、掌握for循环语句、do……loop循环语句的格式及执行流程

2、学会用循环控制结构来解决实际问题

三、活动形式

在教师引导下的自主学习

四、考点注解:

学会使用循环结构设计程序的基本方法。

按条件重复执行一种操作的结构称为循环结构。循环结构有两种形式,即当型循环结构和直到型循环结构。

( 1)当型循环结构:先进行判断,然后根据判断结果(真或假)再决定是否执行循环体的循环结构称为当型循环结构,如左图所示。

( 2)直到型循环结构:先执行一次循环体,然后再根据判断结果(真或假)决定是否继续执行循环体的循环结构称为直到型循环结构,如下图所示。

从上述两种循环结构的流程图可以看出,对于当型循环结构,程序有可能一次也不执行循环体;对于直到型循环结构,程序至少要执行一次循环体。

循环语句实现循环结构。 VB中循环语句有两种:Do…Loop语句和For…Next语句。Do…Loop语句是条件型循环,当循环的执行是由条件控制,在循环的次数不确定时通常选用该语句;For语句是计数循环,在循环次数已知时选用该语句。

(一)、do……loop循环

(二)For…Next 语句

在循环次数已知的情况下,采用 For…Next 语句实现循环结构是比较合适的选择。

For…Next 语句的格式如下:

先计算条件表达式的值,当其值为True 时,执行循环体中的语句序列,然后再重新计算条件表达式的值,当条件表达式的值为False 时,循环终止,执行Loop 语句后的语句。 先计算条件表达式的值,当其值为False 时,执行循环体中的语句序列,然后再重新计算条件表达式的值,直到条件表达式的值为True 时,循环终止,执行Do Until … Loop 语句的下一条语句。

先执行循环语句,再判断条件表达式的值,当条件条件表达式的值为True 时继续执行循环体,当条件表达式的值为False 结束循环,转而执行Loop While 后面的语句

先执行循环语句,再判断条件表达式的值,当条件条件表达式的值为False 时继续执行循环体,直到条件为True 结束循环转而执行Loop Until 后面的语句。

(三)、循环结构例题对比

求1+2+3+……+100的值

1、当for语句中省略step时默认值是1

2、在do……loop 循环中要注意变量初值的设置和循环变量的增值问题

五、习题训练:

1 .[ 单选题 1 分 ]在VB中,某同学要计算1+3+5+……+9的值,他应用循环结构语句如下:s=0 FOR i=1 TO 9 STEP s=s+i请问语句中的“”代表的值是()

A、-1

B、-2

C、2

D、1

2.[ 多选题 2 分]如下VisualBasic程序段,用到了哪些控制结构()。

Private Sub command1_click() S=0 i=16 Do S=S+I i=i+1 Until S>=100 Print"i的值为:";I EndSub

A、顺序结构

B、循环结构

C、层次结构

D、选择结构

3. [ 单选题 1 分 ].以下是一段VisualBasic程序,它的基本结构属于()…Do S=S+I i=i+1 Loop Until S>=100…

A、顺序结构

B、选择结构

C、循环结构

D、树型结构

4. [ 单选题 1 分 ]执行下列VB程序段后,变量j的值为()

S=0 For j=1 to 10 Step 2 S=S+j Next j

A、1

B、10

C、11

D、12

5. [ 单选题 1 分 ]有如下VB程序段,对该程序段执行过程描述正确的是()

Do S=S+1 Loop Until S>100

A、如果S>100,则退出循环

B、如果S<=100,则重复执行S=S+1

C、如果S>100,则重复执行S=S+1

D、不论S初值为多少,至少执行一次S=S+1

6. [ 单选题 1 分 ]在结构化程序设计中通常包含三种不同的控制结构,即:顺序结构、选择结构、循环结构。下列说法正确的是()

A、一个程序只能包含一种结构

B、一个程序最多可以包含两种结构

C、一个程序可以包含以上三种结构

D、一个程序必须包含以上三种结构

7. [ 单选题 1 分 ]求解S=2+4+6+8+10的VB程序如下,试问程序中的“step”表示()。S=0 For i=2 to 10 step 2S=s+I Next i

A、函数

B、步长

C、表达式

D、变量

8.阅读下列程序段,程序运行后在文本框中显示的结果是

Private Sub Form_Click()

Dim s As Integer

Dim i As Integer

s = 0

For i = 1 To 100

s = s + i

Next i

= s

End Sub

A 、5051

B 、5050

C 、10101

D 、10100

9.执行以下语句后,a的值是

Dim a As Integer

a = 1

Do While a <> 100

a = a + 2

Loop

A 、101

B 、溢出

C 、99

D 、100

10.补充完善下列程序段

①求s=2+4+6+……+100之和。

Dim i As Integer

Dim s As Integer

s=0

For i=2 To 100 Step 2

s=_________

Next i

Print s

②输出100以内(包含100)能被3整除的数。

Dim I As Integer

I=1

Do

If I Mod 3=0 Then

Print I

End If

I=I+1

Loop Until _________

Function func()

Dim i As Integer

Dim s As Integer

s = 0

For i = 10 To 100 Step 10

s = ___________

Next i

func = "s=" & s

End Function

④算法描述

'某学校组织一次读书活动,计划购买各种各样书写笔作为奖品。

'用100元买100支笔,其中钢笔每支5元,圆珠笔每支1元,铅笔1元买6支,'求可行的方案数有多少种

'注:请不要更改原程序结构,删除(1)、(2)、(3),并在对应位置填写正确的代码Function func()

Dim i, j, k As Integer 'i,j,k变量分别存储购买三种笔所用的总金额

func = (1)

For i = 0 To 100

For j = 0 To 100

For k = 0 To 100

If (i + j + k) = 100 (2) (i / 5 + j + 6 * k) = 100 Then func = func + 1

End If

Next k

Next (3)

Next i

End Function

Private Sub Command1_Click()

Dim sum

sum = (1)

For i = 1 To 6

k = 2 ^ i

sum = (2) + k

Next

= sum

out (sum)

End Sub

Private Sub Command1_Click() s = 1

For i = 1 To 10

s = s * (1)

Next

func = s

= func

out (func)

End Sub

Private Sub Command1_Click() s = 0

For i = 1 To (1)

k = i / (1 + (2))

s = s + k

Next

func = s

= func

out (func)

End Sub

相关主题
相关文档
最新文档