1、【课标要求】1.理解 For 语句和 Do Loop 语句的含义.2.会用“For”语句和“Do Loop”语句循环结构的简法自主学习 基础认识|新知预习|循环语句的两种形式适用范围一般形式 For语句For语句是表达循环结构最常见的语句之一,它适用于预先知道循环次数的循环结构For循环变量初始值To终值循环体Next Do Loop语句在一些循环结构中,预先不知道循环的次数,要根据其他形式的终止条件停止循环,在这种情况下,一般用Do_Loop语句来描述Do 循环体Loop While 条件为真|自我尝试|1下列算法:求和 123300;已知两个数求它们的商;已知定义在某区间上的函数,将区间十
2、等分求端点及各分点处的函数值;已知三角形的一边长及此边上的高,求其面积,其中可能用到循环语句的个数是()A1 B2C3 D4解析:可能用到循环语句,只需一步即可完成,故不需要用循环语句故用 B.答案:B2若 i 的初始值为 0,当执行完 Do ii1 Loop While i10 后 i 的值变为()A9 B10C11 D12解析:由 Do Loop 语句的形式和执行条件易得循环结束后,i11.答案:C3对于下面所给的算法中,执行循环体的次数是()S0For i1 To 1000SSiNext输出SA1000 B999C1001 D998解析:因为循环中初始值为1,终值为1000,故执行循环体
3、的次数为(10001)11000.答案:A4给出下列 For 语句:S0For i1 To 10SSINext循环变量是_,循环变量的初始值是_,循环变量的终值是_,循环体是_解析:循环变量是 i,循环变量的初始值是 1,循环变量的终值是 10,循环体是 SSi.答案:i 1 10 SSi课堂探究 互动讲练类型一For语句的应用例1 编写一个计算12310000的值的一个算法,画出算法框图,并用For语句描述这个算法【思路点拨】每次加的数都比前一个数大1,这是该问题的规律,由此,我们可以使用For语句,把循环变量的增量设为1,这样就实现了每次加的数比前一个数大1.【解】算法步骤如下:(1)S0
4、;(2)i1;(3)SSi;(4)ii1;(5)如果i10000,那么执行(3),否则输出S.算法框图如图所示 For语句描述算法为:S0 For i1 To 10000 SSi Next 输出S方法归纳解决此类问题,应从确定循环的次数以及循环变量的初始值、步长以终值入手进行分析,只有确定了循环次数,才能利用For语句,同时要注意设定好循环变量的初始值和终值,避免出现多一次循环或少一次循环的情况.跟踪训练 1 阅读下面的算法语句段:b1For k1 To 5 bb*k If b15 Then退出 For 循环 End IfNext输出 k;b.在上述语句段中,k 循环共执行_次,b 的值为_解
5、析:第一次 b111 第二次 b122 第三次 b236 第四次 b642415 结束循环,输出 24 答案:4 24类型二Do Loop 语句的应用例 2 求平方值小于 1000 的最大整数,画出算法框图,并用Do Loop 语句描述这个算法【解】算法框图如图所示:用Do Loop语句描述算法为:i1 Do Si2 ii1 Loop While S1000 ii2 输出i方法归纳(1)由于本题中事先无法确定循环次数,故采用了DoLoop语句,特别应注意输出的应是i2,注意举例体会,如本题中当i31时,S312961,ii132.因为9611000,所以停止循环,此时i33,但是我们要找的是3
6、1,所以输出i2.(2)计算机执行DoLoop语句,先执行一次循环体,若符合条件,继续执行循环体;当不符合条件时,跳出循环,执行DoLoop语句后的语句(3)在解答本题的过程中,易出现Si2与ii1顺序颠倒的错误,导致这种错误的原因是对程序执行的顺序没有搞清.跟踪训练 2 下列算法语句执行后输出的结果是_a2Do aa2Loop While a10输出 a.解析:a22222212 答案:12类型三循环语句的综合应用例3 某商场第一年销售平板电脑5 000台,如果平均每年销售量比上一年增加10%,那么从第一年起,大约几年可使总销售量达到30 000台?画出解决此问题的算法框图,并写出算法语句【
7、解析】算法框图如图所示方法归纳应用循环语句编写程序时应注意的问题(1)在循环体中一定要改变控制条件的变量的值,否则会出现“死循环”,并且循环体每执行一次,控制条件中的变量就应更逼近满足跳出循环体的条件(2)与条件语句一样,循环语句也可以嵌套,但应注意内层与外层的对应关系(3)算法语句编写时应注意跳出循环时对边界数值的检查,防止漏项或多项,可通过几次循环加以验证.跟踪训练 3 某纺织厂2015年的生产总值为300万元,如果年增产率为5%,设计算法,计算该厂最早在哪一年生产总值超过400万元,并用语句描述该算法解析:从2015年底开始,经过x年后生产总值为300(15%)x,可将2015年生产总值
8、赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止由于预先不知道循环的次数,所以用Do Loop语句 算法框图如下所示:用语句描述为:a300 p1.05 n2015 Do aa*p nn1 Loop While a0.5Df(x)2x解析:A、B、D只需要用顺序结构就能描述算法C需要对自变量进行判断,要用条件语句,故选C.答案:C2在下面的程序运行中,计算机输出的结果是()A1 B5C15 D17解析:当循环 6 次后,x 的值为 20182,此时 20 不成立,因此再循环一次,所以得到的 x 的值为 231,10,满足条件,所以结束循环,输出1.答案:A3下面的算法运行后,输出结果 a_.解析:循环 4 次 第一次循环:a112,b213;第二次循环:a235,b538;第三次循环:a5813,b13821;第四次循环:a132134,b342155.结束循环,输出 34.答案:34