1.3.4循环语句1.下面的程序段中,语句PrintI*J执行的次数是________次.ForIFrom1To3ForJFrom5To1Step-1PrintI*JEndForEndFor解析对于每个I,内循环都执行5次,而I有3个取值,所以共执行15次.答案152.已知:S←0I←5WhileI≤20S←S+II←I+5EndWhilePrintS上述伪代码运行的结果是________.解析此程序为循环结构I=5S=5I=10S=15I=15S=30I=20S=50I=25输出:S=50答案503.某程序的伪代码如下:S←0ForIFrom2To10Step2.S←S+IEndForPrintS则程序运行后输出的结果是________.解析由题意可知:S=2+4+6+8+10=30.答案304.已知下列算法语句:I←12S←IDoS←S×II←I-2UntilI<8EndDoPrintS则语句执行后输出结果为________.解析①S=12,②S=12×10,③S=12×10×8=960.答案9605.下列算法输出的结果是________.x←0Whilex<20x←x+1x←x2EndWhilePrintx解析∵①x=1,②x=4,③x=25>20,∴输出25.答案256.根据下列伪代码画出流程图.s←1n←1Whiles<5000s←s×nn←n+1EndWhilePrintn解从上面的伪代码可以看出,这一个用循环语句写出的伪代码,从s←1,n←1开始,第一次循环为求1×1,第二次循环为求1×2,第三次循环为求1×2×3……第n次循环为求1×2×3×…×n.因此,此伪代码就是输出使1×2×3×…×n<5000的最大整数.故流程图为:7.计算1×3×5×7×9×11×13的算法,图中给出了程序的一部分,则横线上应补充的是________.解析将S乘上I后再赋给S,则S最终为1×3×5×…×13.答案S←S×I8.该伪代码表示算法的功能是________.解析循环语句中的循环体是逐个判断xi是否小于0,若xi<0,则变量n增加1,最终n的值就是10个数中负数的个数.答案统计10个数中负数的个数9.如果在程序中运行后输出的结果为132,那么在While后面的条件应为________.解析由输出值为132,而132=12×11,∴循环体执行2次,又While语句是条件成立时执行循环体,∴循环条件应为I>10.另外也可以是I≥11或S<132.答案I>1010.把求1×2×3×…×n的程序补充完整,则横线处应填入________.解析由于求1×2×3×…×n,所以需用累积运算.答案S←S×i11.设计一个计算2+4+6+8+…+80的算法,并分别用For语句与While语句表示.解For语句:S←0ForiFrom2To80Step2S←S+iEndForPrintSWhile语句:S←0i←2Whilei≤80S←S+ii←i+2EndWhilePrintS12.下列伪代码是求1+3+5+…+99的伪代码,读伪代码完成问题:i←1p←0Whilei≤99p←p+ii←i+2EndWhilePrintp(1)伪代码中的循环语句是________型的循环语句;(2)将伪代码用另一类型的循环语句来实现.解(1)当(2)改成直到型循环语句如下:i←1p←0Dop←p+ii←i+2Untili>99EndDoPrintp13.(创新拓展)某城市现有人口总数为100万人,如果年自然增长率为1.2%,试解答下面的问题:(1)写出该城市人口数y(万人)与年份x(年)的函数关系式;(2)用伪代码写出计算10年以后该城市人口总数的算法;(3)用伪代码写出计算大约多少年以后该城市人口将达到120万人的算法.解(1)y=100×(1+0.012)x.(2)10年后该城市人口总数为y=100×(1+0.012)10.伪代码如下:y←100t←1.012ForIFrom1To10y←y×tI←I+1EndForPrinty(3)设x年后该城市人口将达到120万人,即100×(1+0.012)x=120.伪代码如下:S←100I←1.012T←0WhileS<120S←S×IT←T+1EndWhilePrintT