2021版高中数学第二章算法初步3.2循环语句学案北师大版必修33.2 循环语句[学习目标] 1.理解两种结构的循环语句——For语句和Do Loop语句.2.掌握两种循环语句的一般形式并会应用.3.通过具体实例明确两种循环语句的区别和联系.知识点一 For语句1.循环结构是算法中的基本结构,For语句是表达循环结构最常见的语句之一,它适用于预先知道循环次数的循环结构.2.For语句的一般形式是:For 循环变量=初始值 To 终值 循环体Next知识点二 Do Loop语句1.在一些循环结构中,预先不知道循环的次数,一般用Do_Loop语句来描述.2.Do Loop语句的一般形式为:Do循环体Loop_While_条件为真题型一 For语句的应用例1 编写一个计算12+32+52+…+9992的算法,画出算法框图,并用For语句描述这个算法.解 For语句描述算法为:S=0For i=1 to 999 S=S+i^2 i=i+2Next输出S算法框图如图所示.反思与感悟 1.For语句是表达循环结构最常见的语句之一,它适用于预先知道循环次数的循环结构,有些循环中如果不能直接看出循环次数,则可通过题目中的规律先求出循环次数再写循环语句.2.用For语句设计程序的一般思路:①确定循环次数;②把反复要做的工作,作为循环体放在For与Next之间.跟踪训练1 请阅读下列用For语句给出的算法,画出算法框图并说明该算法的处理功能.S=0For i=1 To 20 S=S+i i=i+2Next输出S解 算法的框图如图所示,因此,这个算法实际上处理的是求和S=1+3+5+7+9+11+13+15+17+19.题型二 Do Loop语句的应用例2 设计一个求满足1+3+5+…+i>500的最小自然数i的算法框图,并用Do Loop语句描述这个算法.解 算法框图如下:Do Loop语句描述算法为i=1S=0Do S=S+i i=i+2Loop While S<=500i=i-2输出i反思与感悟 Do Loop语句,先执行一次循环体,若符合条件,继续执行循环体;当不符合条件时,跳出循环,执行Do Loop语句后的语句.跟踪训练2 根据下面的算法语句,绘制算法框图,指出输出的最后结果是什么?并将它改为另一种循环,画出相应的算法框图.算法如下:S=0For i=3 To 99 S=S+i^3 i=i+2Next输出S解 算法语句对应的算法框图如图1所示,图1它用的是“For”语句,最终输出的结果是33+53+…+993,利用“Do Loop语句”可以改为如下S=0i=3Do S=S+i^3 i=i+2Loop While i<=99输出S相应算法框图如图2所示:图2题型三 循环语句与条件语句的综合应用例3 某高中男子体育小组的100 m赛跑的成绩(单位:s)如下:12.1,13.2,12.7,12.8,12.5,12.4,12.7,11.5,11.6,11.7. 从这些成绩中搜索出小于12.1 s的成绩,画出算法框图,并用相应的算法语句描述该算法.解 算法框图如下:用算法语句描述如下:For i=1 To 10输入gi If gi<12.1 Then 输出gi End If i=i+1Next反思与感悟 1.本题是循环语句和条件语句的综合运用,在执行循环体的过程中嵌套着条件语句,即判断gi<12.1是否成立,在编写这样的含有条件语句和循环语句的混合语句时,应明确循环体与条件之间的关系.2.Do Loop语句能表达不知循环次数的循环结构,常与选择结构综合考查,在读程序时,要注意用列表法把循环体中的变量的值列出来,从中观察规律,检验While后的条件是否被满足,一旦不满足条件,循环停止.跟踪训练3 高一(1)班共60人,市青少年保护中心抽样检测同学们的身体素质,要求学号被3整除的同学参加体检,已知学员是从1到60号,请编写输出参加体检的同学学号的一个算法及算法框图.解 算法框图为算法如下:方法一 运用For语句:For S=0 To 60S=S+3输出SNext 方法二 运用Do Loop语句:S=0Do S=S+3输出SLoop While S<=60应用循环语句设计程序例4 对任意正整数n,设计一个程序求S=1+++…+的值.错解 程序如下:输入 n;i=1s=0Do i=i+1 S=S+1/iLoop While i<n输出 S.错解分析 错误的根本原因是第一次执行S=S+1/i时,i的初始值经i=i+1后,已经变为2,则S=0+,这样所求的S=++…+,而不是S=1+++…+,因为后执行S=S+1/i,所以要把i的初始值变为0才行.自我矫正 程序如下:输入n;i=0s=0Do i=i+1 s=s+1/iLoop While i<n输出 S.1.关于Do Loop循环语句叙述正确的是( )A.总是执行循环体B.先执行一次循环体C.不满足条件时执行循环体D.遇到Do Loop就结束答案 B解析 对于Do Loop循环语句,先执行循环体,再根据条件是否成立来确定执行循环体.2.下列问题可以设计成循环语句计算的有( )①求1+3+32+…+39的和;②比较a,b两个数的大小;③对于分段函数,要求输入自变量,输出函数值;④求平方值小于100的最大整数.A.0个 B.1个C.2个 D.3个答案 C解析 ①和④用到循环语句;②③用不到.故选C.3.执行如图所示的程序框图,若输入的a值为1,则输出的k值为( )A.1 B.2 C.3 D.4答案 B解析 k=0,b=a=1,第一次循环:a==-≠1,k=0+1=1;第二次循环:a==-2≠1,k=1+1=2;第三次循环:a==1,满足a=b,输出k=2.4.下列程序输出的结果是( )i=1S=0Do S=S*2+1 i=i+1Loop While i<=4输出SA.3 B.7 C.15 D.19答案 C解析 由算法语句可知,该循环体共循环4次,分别为S=2×0+1=1,S=2×1+1=3,S=2×3+1=7,S=2×7+1=15.5.下面是求1×2×3×4×5×6×7×8×9×10的一个算法语句,将其补充完整.a=10b=1Do b=a*b a=________Loop While ________输出b答案 a-1 a>=1解析 a的初始值为10,故循环体中的值应该递减,即a从10减小到1,循环体的条件应为a≥1. 1.循环语句与条件语句的关系:循环语句中一定有条件语句,条件语句是循环语句的一部分,离开条件语句,循环语句无法循环;但条件语句可以脱离循环语句单独存在,可以不依赖循环语句独立地解决问题.2.应用循环语句描述算法应注意的问题:(1)循环语句中的循环变量,一般要合理设置初始值;(2)在循环过程中需要有“结束”的语句;(3)要注意For语句和Do Loop语句各自的适用条件与执行步骤的区别.1。