- 2021-05-28 发布 |
- 37.5 KB |
- 12页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
高中数学人教a版必修三 第一章 算法初步 学业分层测评7 word版含答案
学业分层测评(七) 循环语句 (建议用时:45 分钟) [学业达标] 一、选择题 1.下列问题可以设计成循环语句计算的有( ) ①求 1+3+32+…+39 的和; ②比较 a,b 两个数的大小; ③对于分段函数,要求输入自变量,输出函数值; ④求平方值小于 100 的最大整数. A.0 个 B.1 个 C.2 个 D.3 个 【解析】 ①和④用到循环语句,②和③用不到. 【答案】 C 2.下面的程序: a=1 WHILE a<100 a=a+1 WEND PRINT a END 执行完毕后 a 的值为( ) A.99 B.100 C.101 D.102 【解析】 该程序中使用了当型循环语句,当执行到 a=99+1= 100 时,不满足条件 a<100,退出循环输出 a 的值为 100. 【答案】 B 3.如图 125 是求 1~1 000 内所有偶数的和的程序,把程序框图 补充完整,则( ) 图 125 A.①处为 S=S+i,②处为 i=i+1. B.①处为 S=S+i,②处为 i=i+2. C.①处为 i=i+1,②处为 S=S+i. D.①处为 i=i+2,②处为 S=S+i. 【解析】 程序框图求的是 1~1 000 内所有偶数的和,故 i 步长 为 2,应有 i=i+2,排除 A、C;i 初值为 2,S 应加的第一个偶数为 2, 而不是 4,故语句 S=S+i 应在 i=i+2 的前面,排除 D. 【答案】 B 4.下列程序运行后输出的结果为( ) A.17 B.19 C.21 D.23 i=1 S=0 DO i=i+2 S=3+2*i i=i+1 LOOP UNTIL i>=8 PRINT S END 【解析】 第一次循环,i=1+2=3,S=3+2×3=9,i=4; 第二次循环,i=6,S=3+2×6=15,i=7; 第三次循环,i=9,S=3+2×9=21,i=10, ∴输出 S=21. 【答案】 C 5.有以下程序段,下面说法正确的是( ) K=8 WHILE K=0 K=K+1 WEND A.WHILE 循环执行 8 次 B.该循环体是无限循环 C.循环体语句一次也不执行 D.循环体语句只执行一次 【解析】 对于 WHILE 语句,若满足条件,则执行循环体,而 K =8,不满足条件 K=0,所以循环体一次也不执行. 【答案】 C 二、填空题 6.根据下列算法语句,当输入 x 为 60 时输出 y 的值为________. INPUT “x=”;x IF x<=50 THEN y=0.5*x ELSE y=25+0.6*(x-50) END IF PRINT “y=”;y END 【解析】 由题意,得 y= 0.5x,x≤50 25+0.6(x-50),x>50 当 x=60 时, y=25+0.6(60-50)=31. ∴输出 y 的值为 31. 【答案】 31 7.在下面的程序中,若输出 k=3,则输入的最小整数 n=________. 【导学号:28750019】 INPUT n k=0 DO n=2n+1 k=k+1 LOOP UNTIL n>100 PRINT k END 【解析】 设 n=a,则第一次循环,n=2a+1,k=1;第二次循 环,n=2(2a+1)+1=4a+3,k=2;第三次循环,n=2(4a+3)+1=8a +7,k=3,此时,执行“是”,结束循环,输出 k=3.因此 8a+7>100, 即 a>93 8 ,故 n 最小整数为 12. 【答案】 12 8.下面为一个求 10 个数的平均数的程序,则在横线上应填充的 语句为________. S=0 i=1 DO INPUT x S=S+x i=i+1 LOOP UNTIL ________ a=S/10 PRINT a END 【解析】 此为直到型循环,在程序一开始,即 i=1 时,开始执 行循环体,当 i=10 时继续执行循环体,题目中求 10 个数的平均数, 所以当 i>10 时应终止循环. 【答案】 i>10 三、解答题 9.设计一个计算 1+3+5+7+…+99 的值的程序,并画出程序 框图. 【解】 程序框图如图所示: 程序如下: i=1 S=0 WHILE i<=99 S=S+i i=i+2 WEND PRINT S END 10.设计算法求 1 1×2 + 1 2×3 + 1 3×4 +…+ 1 99×100 的值,编写程序, 并画出程序框图. 【解】 算法如下: 第一步:令 S=0,i=1. 第二步:若 i≤99 成立, 则执行第三步; 否则,输出 S,结束算法. 第三步:S=S+ 1 i(i+1). 第四步:i=i+1, 返回第二步. 程序: S=0 i=1 WHILE i<=99 S=S+1/(i*(i+1)) i=i+1 WEND PRINT S END 程序框图: [能力提升] 1.读下面甲、乙两个程序: 对甲、乙两个程序和输出的结果表述正确的是( ) A.程序不同,结果相同 B.程序不同,结果不同 C.程序相同,结果相同 D.程序相同,结果不同 【解析】 执行甲,乙程序后可知都是计算 1+2+3+4+…+1 000 的值. 【答案】 A 2.执行如图 126 的程序框图,如果输出的是 a=341,那么判断 框应为( ) 图 126 A.k<4? B.k<5? C.k<6? D.k<7? 【解析】 a=1,k=2;a=5,k=3;a=21,k=4;a=85,k=5; a=341,k=6. 【答案】 C 3.阅读如图 127 的程序框图,若输入 n=6,则输出 k 的值为 ________. 图 127 【解析】 n=6,k=0,n=13,k=1; n=27,27<100,k=2; n=55,55<100,k=3; n=111,111>100,输出 k=3. 【答案】 3 4.求 200 以内(包括 200)的所有偶数和,试用两种循环结构画出 其程序框图并编写程序. 【解】 当型循环,程序框图如图所示: 程序为: i=2 sum=0 WHILE i<=200 sum=sum+i i=i+2 WEND PRINT “偶数和为:”;sum END 直到型循环,程序框图如图所示: 程序为: i=2 sum=0 DO sum=sum+i i=i+2 LOOP UNTIL i>200 PRINT “偶数和为:”;sum END查看更多