1、3.2循环语句一、选择题1.执行下面算法语句的结果是()Fori1To7ai2S2*a3Next输出S.A.17 B.19C.21 D.23答案C解析该语句为For循环语句,循环变量i,初始值为1,终止值为7,步长为1,所以需循环7次,最后循环结束时,i7.故此时a729,S29321.2.下面程序中循环语句的循环终止条件是()m1Domm3Loop While m10输出m.A.m10 B.m10 D.m10答案D解析当m10不成立即m10时,循环终止,执行Do Loop语句后的语句.3.下面的算法语句第3个输出的数是()i1x1Do输出xii1xxLoop Whilei5A.1 B. C.
2、2 D.答案C解析该算法语句中关键是循环语句,第一次输出的数是1,第二次输出的数是x1,第三次输出的数是x12.4.有下面算法语句:Fori5 To 150ii5Next该语句共执行循环的次数为()A.30 B.31 C.29 D.32答案B解析由题意知,该问题为5加上多少次5之后为150,设加n次,则有55n150,n31.5.下列是一个表示计算S24630的算法,其中横线内应填()S0i2DoSSi ii2Loop While输出S.A.i30 B.i30C.i30答案A解析Do Loop语句中,条件成立时执行循环体,条件不成立时退出循环,故i30.6.下面语句执行后输出的结果是()n5S
3、0DoSSnnn1Loop While S15输出n.A.1 B.0 C.1 D.2答案B解析由于543214,n211,这时仍满足条件“S15”,S14115,n110,这时S15不满足,跳出循环.7.运行下面的语句,执行后输出的S的值是()i1Doii2S2*i+1Loop While i3 C.i3 D.i3答案C解析这是用Do Loop语句描述的算法,i为循环变量,初始值为1,输出结果为64时,应该是进行了三次循环,故While后面的条件为i3.二、填空题10.用Do Loop语句编写一个算法语句,输出使147i300成立的最小正整数.则处应填 .S0i1DoSSiii3Loop Wh
4、ile输出i3.答案S300解析Do Loop语句中,当While后的条件为真执行循环.11.执行下面的算法语句,输出的结果是 .A1B1DoAABBABLoop While B15CAB输出C.答案34解析循环结构中的循环体的作用是将前两个数相加,得到后一个数;如果没有循环条件的限制,程序中的循环结构将连同初始值,依次给A,B赋值为1,1;2,3;5,8;13,21;,其中第一、三、五、个数为A的值,第二、四、六、个数为B的值;可见,当B21时,循环结束,此时A13,所以,CAB34.12.下述算法语句的表达式为 .S0Fori2 To 10p2*i1S=S1/pNext输出S.答案S解析算
5、法语句中体现的是循环语句的应用.S.三、解答题13.分别用两种不同循环语句描述下列算法:计算246100的值.解循环语句如下:方法一S1For i2 To 100 Step 2SS*iNext输出S.方法二i2S1DoSS*iii2Loop Whilei100输出S.14.运行下面的算法语句,输出的i的值为 .S0i1DoSSiii1Loop WhileS18输出i.答案7解析由于循环体是先执行SSi,再执行ii1,然后进行判断,所以当S1234515时,i6,这时1518成立,当S15621时,i7,这时2118不成立,于是输出i7.15.设计算法求的值,并画出算法框图及编写算法语句.解算法步骤如下:1.令S0,i1;2.若i99成立,则执行第3步;否则,输出S,结束算法;3.SS;4.ii1,返回第2步.算法框图如图:或算法语句:S0For i1 To 99SS1/(i*(i1)Next输出S.或S0i1DoSS1/(i*(i1)ii1Loop While i99输出S.