课时分层作业(十三)(建议用时:40分钟)一、选择题1.读下面的算法语句,输出的结果是()I=1S=0DoC[当I=1时,S=0×2+1=1;当I=2时,S=1×2+1=3;当I=3时,S=3×2+1=7;当I=4时,S=7×2+1=15.故选C.]2.下面给出的四个算法框图中满足DoLoop语句的是()D[当执行DoLoop语句时,先执行一次循环体,若符合条件,继续执行循环体,当不符合条件时,跳出循环,执行DoLoop语句后的语句.]3.观察下面的算法语句:S=0Fori=1To100S=S+iNext输出S该算法语句的功能是()A.求1×2×3×4×…×100的值B.求1+2+3+4+…+100的值C.求1×3×5×…×99的值D.求1+3+5+…+99的值B[根据For循环语句的作用可知通过累加求式子1+2+3+4+…+100的值.]4.以下程序S=0Forx=-1To11S=x*xNext输出S该程序输出结果是()A.-1B.11C.100D.121D[由For语句的算法特点可知,S=11×11=121.]5.下列程序中循环语句的循环终止条件是()m=1Dom=m+3LoopWhilem<10输出mA.m=10B.m<10C.m>10D.m≥10D[当m<10时不成立,即m≥10时循环终止.]二、填空题6.以下算法语句:S=1k=13DoS=S*kk=k-1LoopWhile________输出S若语句运行的结果是S=156,则横线处应填入的k的条件是________.k>=12或k>11[第一次循环是S=1×13=13,第二次循环是S=13×12=156,故k的条件应是k≥12或k>11.]7.执行下面的算法语句后输出的结果是________.S=0Fori=1To4S=S*i+lNext输出S41[当i=1时,S=0×1+1=1;当i=2时,S=1×2+1=3;当i=3时,S=3×3+1=10;当i=4时,S=10×4+1=41,循环结束,输出S,所以输出S的值为41.]8.阅读下面的算法语句:b=1Fork=1To5b=b*kIfb≥15Then退出For循环EndIfNext输出b.在上述语句中,k循环共执行________次,输出的结果为____.424[本题主要考查For循环语句,首先观察循环的条件Ifb≥15Then退出循环,可知b的最终值为24,k从1到4,所以,k的最终值为4,这时b=24.]三、解答题9.根据下列框图写出对应算法语句.[解]S=0i=1DoS=S+ii=i+1LoopWhilei<=1000输出S10.给出以下10个数:4,10,70,33,95,74,29,17,60,30.要求将大于40的数找出来,画出求解该问题的算法框图,并写出程序.[解]算法框图如图所示:程序如下:i=1Do输入xIfx>40Then输出xEndIfi=i+1LoopWhilei<=101.如果算法语句运行后输出的结果是720,则在横线处应填入的正整数为()A.9B.8C.7D.6C[第一次执行循环体,S=1×10=10,t=9,第二次执行循环体,S=10×9=90,t=8,第三次执行循环体,S=90×8=720,t=7,依题意,循环结束,根据DoLoop语句的要求,条件不满足时,结束循环,所以条件应为t>7,故选C.]2.下列算法运行后输出的结果为()i=7S=0DoS=S+ii=i-1LoopWhileS<15输出iA.1B.2C.3D.4D[执行第一次循环后,S=7,i=6,满足条件;执行第二次循环后,S=13,i=5,满足条件;执行第三次循环后,S=18,i=4,不满足条件,结束循环.故输出的i=4.]3.运行下面的语句,输出的值为________.S=0i=1DoS=S+ii=i+1LoopWhileS<18输出i7[由于循环体是先执行S=S+i,再执行i=i+1,然后进行判断,当S=1+2+3+4+5=15时,执行i=5+1=6,这时15<18成立,再循环一次S=15+6=21,i=6+1=7,这时再判断21<18不成立,于是i=7.]4.执行下面算法语句,输出的结果是________.A=1B=1DoA=A+BB=A+BLoopWhileB<15C=A+B输出C34[循环结构中的循环体的作用是将前两个数相加,得到后一个数;如果没有循环条件的限制,程序中的循环结构将连同初始值,依次给A、B赋值为1、1,2、3,5、8,13、21,…,其中第一,三,五,…个数为A的值,第二,四,六,…个数为B的值;可见,当B=21时,循环结束,此时A=13,所以,C=A+B=34.]5.写出求函数y=x3+3x2-24x+30的值的算法语句,连续输入11个自变量的取值,输出相应的函数值.[解]解决本题的算法步骤:1.输入自变量x的值.2.计算y=x3+3x2-24x+30.3.输出y.4.记录输入次数.5.判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.显然,可以用计数变量n(1≤n≤11)记录次数,通过循环结构来实现算法.算法框图如图:算法语句:n=1