您好,欢迎访问三七文档
当前位置:首页 > 中学教育 > 高中教育 > 2020版高中数学 第一章 算法初步 1.2.3 循环语句学案(含解析)新人教A版必修3
11.2.3循环语句学习目标1.了解循环语句,并掌握其结构.2.会应用条件语句和循环语句编写程序.3.通过对现实生活情境的探究,体会应用计算机解决数学问题的方便简捷.知识点一循环语句循环语句与程序框图中的循环结构相对应,一般程序设计语言中都有直到型和当型两种循环语句结构,分别对应于程序框图中的直到型和当型循环结构.知识点二两种循环语句两种循环语句的对比名称直到型当型格式DO循环体LOOPUNTIL条件WHILE条件循环体WEND对应程序框图过程先执行一次DO和UNTIL之间的循环体,再判断UNTIL后的条件是否符合,如果不符合,继续执行循环体,然后再检查上述条件,如果仍不符合,再次执行循环体,直到条件符合时为止.这时不再执行循环体,跳出循环体,执行UNTIL语句后面的语句先判断条件的真假,如果条件符合,则执行WHILE和WEND之间的循环体,然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止,这时不再执行循环体,跳出循环体,执行WEND后面的语句21.算法中的循环结构由WHILE语句来实现.(×)2.循环语句中有直到型语句和当型语句,即UNTIL语句和WHILE语句.(√)3.循环语句在循环的过程中需要有“结束”的语句.(√)4.因为循环结构中包含条件结构,所以在循环语句中也包含“IF—THEN”这样的语句.(×)题型一UNTIL(直到型)循环语句例1下面为一个求1,2,3,…,20的平均数的程序,在横线上应填充的语句为()S=0i=1DOS=S+ii=i+1LOOPUNTILa=S/20PRINTaENDA.i>20B.i<20C.i>=20D.i<=20答案A解析由题意知横线处应填i>20.反思感悟(1)直到型循环语句中先执行一次循环体,再判断条件是否满足,以决定继续循环还是退出循环.(2)循环次数由判断条件控制,控制条件的设置要综合考虑初始化值和LOOPUNTIL后的判断条件,若初始值为1,则循环体中变量累加,若初始值为循环的次数,则循环体中变量递减.跟踪训练1如果下面的程序运行后输出的结果是132,那么在程序中LOOPUNTIL后面的“条件”应为()i=12s=1DO3s=s*ii=i-1LOOPUNTIL“条件”PRINTsENDA.i>11B.i>=11C.i<=11D.i<11答案D解析计数变量i的初始值为12,累积变量s的初始值为1,第1次执行循环后得s=12,i=11,因为12≠132,故第2次执行循环,得s=12×11=132,i=10,满足s=132,故退出循环.结合选项,可知“条件”应为i<11,故选D.题型二WHILE(当型)循环语句例2下面的程序运行后的输出结果为()i=1WHILEi<8i=i+2s=2*i+3WENDPRINTsENDA.17B.19C.21D.23答案C解析计数变量i的初始值为1,满足i<8,则第1次执行循环体,得i=1+2=3,s=2×3+3=9;i=3仍然满足i<8,则第2次执行循环体,得i=3+2=5,s=2×5+3=13;i=5仍然满足i<8,则第3次执行循环体,得i=5+2=7,s=2×7+3=17;4i=7仍然满足i<8,则第4次执行循环体,得i=7+2=9,s=2×9+3=21;i=9不满足i<8,则循环结束,输出21,故选C.引申探究阅读程序,回答下列问题:INPUTni=1S=0WHILEi<=nS=S+1/[i*(i+1)]i=i+1WENDPRINTSEND(1)若输入n=3,则输出的结果为.(2)此程序对应的计算式子是.(3)程序中的循环语句对应型循环结构.答案(1)34(2)11×2+12×3+…+1nn+(3)当解析(1)输入n=3,当i=1时,S=0+12=12;当i=2时,S=12+16=23;当i=3时,S=23+112=34;当i=4时,结束循环,此时输出S=34.(2)此程序是用于计算11×2+12×3+…+1nn+的值.(3)这是WHILE语句,对应的是当型循环结构.反思感悟(1)当型循环语句以WHILE开头,以WEND作为结束标志.WEND是WHILEEND的缩写,表示WHILE循环到此结束.(2)执行WHILE语句时,先判断条件,再执行循环体,然后再判断条件,再执行循环体,反复执行,直至条件不满足.(3)WHILE语句中的条件是指循环体的条件,满足此条件时,执行循环体,不满足时,则执行5WEND后面的语句.6跟踪训练2已知程序如下:INPUTni=1s=0WHILEi<=ns=s+2*ii=i+1WENDPRINTsEND若输入变量n的值为3,则输出变量s的值为;若输出变量s的值为30,则输入变量n的值为.答案125解析该程序的作用是累加并输出s=0+2×1+2×2+2×3+…+2n,若输入变量n的值为3,则输出变量s的值为s=0+2×1+2×2+2×3=12;若输出变量s的值为30,由于0+2×1+2×2+2×3+…+2n=30,解得n=5,则输入变量n的值为5.循环语句的设计典例(1)画出计算12+32+52+…+9992的程序框图,并写出程序.解由题意知各项指数相同,底数相差2,可以借助于循环语句设计算法.①程序框图:②程序为:S=07i=1DOS=S+i^2i=i+2LOOPUNTILi>999PRINTSEND(2)编写程序求2×4×6×…×100的值.解程序:i=2m=1WHILEi<=100m=m*ii=i+2WENDPRINTmEND[素养评析](1)循环语句有两种,即直到型和当型,直到型循环又称“后测试”循环,也就是我们所讲的“先执行后测试”,“先循环后判断”.当型循环也叫“前测试”循环,也就是我们所讲的“先测试后执行”,“先判断后执行”.(2)选择运算方法,设计运算程序,求得运算结果是数学核心素养的重要内容.1.下列问题可以设计成循环语句计算的有()①求1+3+32+…+39的和;②比较a,b两个数的大小;③对于分段函数,要求输入自变量,输出函数值;④求平方值小于100的最大整数.A.0个B.1个C.2个D.3个答案C8解析①④用到循环语句;②③用不到.故选C.2.下面程序执行后输出的结果是()n=5S=0WHILES<15S=S+nn=n-1WENDPRINTnENDA.-1B.0C.1D.2答案B解析当S=5+4+3+2=14时,n=5-1-1-1-1=1,此时S<15,执行循环体,则S=5+4+3+2+1=15,n=1-1=0,此时S=15,循环结束,输出0.3.已知如图所示语句,i=1DOi=i+1LOOPUNTILi*i=100i=i-1PRINTiEND最后输出的结果是()A.i-1B.100C.10D.99答案D解析由循环语句及赋值语句可知,当i*i≥100时跳出循环体,此时i=10,故最后输出结果为9.4.下面的程序运行后第3次输出的数是________.i=1x=1DOPRINTxi=i+1x=x+1/2LOOPUNTILi>5END答案2解析该程序中关键是循环语句,第一次输出的数是1,第二次输出的数是x=1+12=32,第三次输出的数是x=1+12+12=2.5.设计一个程序,输出100~200之间被7除余3的数.解程序如下:i=100WHILEi<=200n=iMOD7IFn=3THENPRINTiENDIFi=i+1WENDEND10应用循环语句编写程序要注意以下三点:(1)循环语句中的变量一般需要进行一定的初始化操作,也就是要设置一些变量的初始值.(2)循环语句在循环的过程中需要有“结束”的语句,程序中最忌“死”循环.(3)在循环中要改变循环条件中涉及到的变量.程序每执行一次循环体,循环条件中涉及到的变量就会发生改变,且在步步逼近跳出循环体的条件.一、选择题1.有以下程序段,其中描述正确的是()k=8WHILEk=0k=k+1WENDA.循环体语句执行10次B.循环体是无限循环的C.循环体语句一次也不执行D.循环体语句只执行一次答案C解析对于WHILE语句,条件符合则执行循环体,而本题k=8,不满足条件k=0,所以循环体语句一次也不执行.故选C.2.下面的程序:a=1WHILEa<100a=a+1WENDPRINTaEND11执行完毕后a的值为()A.99B.100C.101D.102答案B解析a=99+1=100.3.运行下面的程序,如果输入的n是6,那么输出的p是()INPUT“n=”;nk=1p=1WHILEk<np=p*kk=k+1WENDPRINTpENDA.120B.720C.1440D.5040答案A4.下面的程序,其循环体执行的次数是()S=0i=1DOS=S+ii=i+2LOOPUNTILi>100PRINTSENDA.50B.49C.100D.99答案A解析程序实质就是求1~100之间的奇数之和,即S=1+3+5+…+99,共50个奇数,因12此循环体执行50次.5.当x=2时,下面程序运行后输出的结果是()i=1s=0DOs=s*x+1i=i+1LOOPUNTILi>4PRINTsENDA.3B.7C.15D.17答案C解析0×2+1=1,1×2+1=3,3×2+1=7,7×2+1=15,此时,i=5>4,跳出循环,故输出s的值为15.6.阅读下列算法语句,若输入的n为10,则输出的变量S和T的值分别为()INPUT“n=”;nS=0T=0DOS=S+nn=n-1T=T+nn=n-1LOOPUNTILn<2PRINTS,TENDA.30,25B.30,30C.25,25D.25,3013答案A解析当n=10时,S=10+8+6+4+2=30,T=9+7+5+3+1=25,故选A.7.执行下面的程序,输入a=3,b=-1,n=4后,输出的结果是()INPUT“a,b,n=”;a,b,ni=1WHILEi<=nc=a+ba=bb=ci=i+1WENDPRINTcENDA.3B.4C.5D.6答案B解析循环体被执行了四次,第一次执行循环体得到的结果是c=2,a=-1,b=2,i=2;第二次执行得到的结果是c=1,a=2,b=1,i=3;第三次执行得到的结果是c=3,a=1,b=3,i=4;第四次执行得到的结果是c=4,a=3,b=4,i=5,此时输出c=4.8.下面是一个求20个数的平均数的程序,在横线上应填入的语句为()S=0i=1WHILEINPUTxS=S+xi=i+1WENDa=S/20PRINTa14ENDA.i>20B.i<20C.i>=20D.i<=20答案D解析根据题意得循环体需执行20次,从而横线上应填入的语句为“i<=20”.故选D.9.阅读下面的程序.i=1S=0WHILEi<=100S=S+ii=i+1WENDPRINTSEND该程序是计算下列和式中的()A.100111++++1B.1+2+…+101C.1+2+3+…+99D.1+2+3+…+100答案D10.下面是求1~1000内所有偶数的和的程序,把程序补充完整,则()i=2S=0WHILEi=1000①②WEND15PRINTSENDA.①处为S=S+i,②处为i=i+1B.①处为S=S+i,②处为i=i+2C.①处为i=i+1,②处为S=S+iD.①处为i=i+2,②处为S=S+i答案B解析程序求的是1~1000内所有偶数的和,故i步长为2,应有i=i+2,排除A,C;i初值为2,S应加的第一个偶数为2,而不是4,故语句S=S+i应在i=i+2的前面,排除D.二、填空题11.执行下面的程序,则输出的结果为________.I=1WHILEI<7S=2*I+1I=I+2WENDPRINTSEND答案11解析由题意可得I=1,满足条件I<7,S=3;I=3,满足条件I<7,S=7;I=5,满足条件I<7,S=11;I=7,不满足条件I<7,退出循环,输出S的值为11.12.下面程序执行后,输出的结果是________.i=11S=1DOS=S*i16i=i-1LOOPUNTILi<9PRINTSEND答案990解析分析程序
本文标题:2020版高中数学 第一章 算法初步 1.2.3 循环语句学案(含解析)新人教A版必修3
链接地址:https://www.777doc.com/doc-8466508 .html