2.4程序的循环结构 学案

资源下载
  1. 二一教育资源

2.4程序的循环结构 学案

资源简介

厚天地之大美 达万物之至理


学案6:程序的循环结构

教师寄语:希望,只有和勤奋作伴,才能如虎添翼。
【学习目标】
1.了解循环的概念,理解循环结构的基本思想
2.掌握For-Next语句的基本结构的写法:循环变量,初值,终值和步长
3.理解For-Next语句的执行过程
【学习重、难点】
1.理解循环结构的基本思想
2.理解For-Next语句的执行过程
【复习回顾】
1. 在前面的章节我们已经学过两种程序结构,所有语句会自上而下逐一执行的结构
是 ,根据条件,有的语句执行有的不被执行的结构是 。
2. 以下程序段执行后,输出结果为(?? )。 ? m=29 If m Mod 3 <> 0? Then ? Print m & "不能被3整除" ? Else Print m & "能被3整除"? End If A m能被3整除 B m不能被3整除 C 29不能被3整除 D 29能被3整除 以下程序段运行后,y的值是(?)。 x=3 If x>3?Then y=2*x Else y=3*x+1End if A 25 B 26 C 10 D 5
【学习过程】
1、 导入
编程:单击Command1,在输入框任意输入5个数字,并用Print方法输出,效果如图:
程序段一:
A = Val(InputBox("输入第1个数"))
B = Val(InputBox("输入第2个数"))
C = Val(InputBox("输入第3个数"))
D = Val(InputBox("输入第4个数"))
E = Val(InputBox("输入第5个数"))
Print A
Print B
Print C
Print D
Print E
*问题:输入10个、20个……甚至更多数字呢? 使用程序段二替换程序一试试效果。
程序段二:
For i=1 To 5 step 1
A = Val(InputBox("输入5个数"))
Print A
Next i
这种解决重复性操作的结构,称为循环结构。本节我们将学习第一种循环语句:For—Next。
二、新知学习
我们体验了使用循环语句的便捷,那么循环语句的执行过程是如何的呢?通过程序段二的流程图,进一步了解初值、终值、步长和循环体语句的变化,以及执行过程。


从上图可以看出,循环结构其实就是一种重复结构,它的作用是使一段程序能重复执行,被重复执行的语句部分称为循环体。本程序For语句中的i被称为循环变量,作用是控制循环次数,首先赋值的正整数1,被称为循环变量的初值。To 5是指循环变量i的取值范围为从1到5的正整数,正整数5是i的最大值,称为终值,是用于判断循环是否结束的值。Step 1表示循环变量i的增量为1,被称为步长。中间的输入和打印语句是本程序段中重复执行的语句部分,即循环体,每执行完一次循环体,循环变量就会增加一个步长,并回到For语句对循环变量的当前值进行判断,仍在取值范围内,就继续执行循环体,否则结束循环。由此可见,循环结构的重复一般都是有条件的,即在满足For语句中的条件时才执行循环体,否则退出循环体。
*思考:当i的值为 时,程序段二结束循环? 循环体被重复执行了 次?
三、合作探究
根据程序段二,总结For-Next语句的语句格式:
? For 循环变量 = 初值?To 终值 ?[step 步长 ]
? 语句组(即循环体)
Next [循环变量]?
四、小试牛刀
编程:单击窗体,输出 " 1+2+3…+10="?
思考分析: 程序参考:
1、这是重复的加法运算,算式中的数从1以固定值1递增到10,初步认定可以进入循环。2、可设置循环变量i,初值为1,终值为10,步长为1,及存放和的变量s。 3、可以用一个通式(循环体)来表达运算:s+i,满足循环结构的条件。 4、当i大于10时结束重复加法,输出累加和的值s。 Private Sub Form_click() Dim s As Single, i As Integer s = 0 For i = 1 To 10 Step 1 s = s + i Next i Print " 1+2+3…+10= ";sEnd Sub(*思考:s的初值为何设置为0)
五、精讲点拨
1.循环变量为数值型变量。
2.初值、终值、步长均为数值表达式。
3.当初值小于终值时,步长为正数;当初值大于终值时,步长为负数;步长为1时,可
省略step。(思考:步长是否可以等于0?)
4.语句组可以是一个或多个语句,也可以没有(称为空循环)。
5.循环体执行的次数,通常 ,遇Exit For等 不适用。
6.For—Next必须成对出现。
7.循环体语句可以含有循环结构(循环嵌套)。
【当堂检测】 (提示:尝试在VB中验证答案)
1.以下程序段运行后,整型变量s的值是(?)。 ?s=1 ? For i=1 To 10 Step 3 ? s=s*iNext i ?Print s A? 55 B?3640 C 28 D? 280 (*思考:s的初值为何赋值为1) 2.阅读程序,写出运行结果Dim i As Integer, x As Integer, y As Integer y=30For i=1 To 3 x=Val(InputBox("x=")) If y < x Then y=x End If Next i Print y 程序运行后,依次输入:36? 87? 51运行后输出结果是_________________。
3、以下是计算s=1+6+11+…+101的程序代码,请完善程序。 Dim s As Integer, i As Integer s=0 For i=1 To 101 Step__________ s=____________ Next i Print s 4、以下是计算s=1*2*3*…*10的程序代码,请补全程序。 Dim s As Long Dim i As Integer s=__________ For i=1 To 10 ??s=__________ Next i Print s
【上机操作】
1、 编程:
(1)计算12+22+32+…+1002的值
要求:单击窗体,输出格式为"12+22+32+…+1002="?
(2)*编程:单击Command1,在输入框任意输入正整数N,计算1*2*…*N的值。
要求:输入框提示信息为:"请输入正整数N",输出格式为"1*2*…*N="?
2、 编程:
(1)单击Command1,输出如右图一的图形。


(图一)



(2)*【课后能力拓展】*
单击窗体,输出如右图二的图形,该如何编程?

(图二)

【课堂小结】







第2页共4页


展开更多......

收起↑

资源预览