第3课时 循环结构、程序框图的画法
【基础练习】
1.下面关于当型循环结构和直到型循环结构的说法,不正确的是( )
A.当型循环结构是先判断后循环,条件成立时执行循环体,条件不成立时结束循环 B.直到型循环结构要先执行循环体再判断条件,条件成立时结束循环,条件不成立时执行循环体
C.设计程序框图时,两种循环结构可以任选其中的一种,两种结构也可以相互转化 D.设计循环结构的程序框图时只能选择这两种结构中的一种,除这两种结构外,再无其他循环结构
【答案】D
2.阅读如图所示的程序框图,运行相应的程序,输出的s值等于( ) A.-3 C.0
B.-10 D.-2
(第2题图) (第3题图)
【答案】A
【解析】开始:k=1,s=1;1<4,是,s=2×1-1=1,k=2;2<4,是,s=2×1-2=0,k=3;3<4,是,s=2×0-3=-3,k=4;4<4,否,输出s=-3.故选A.
3.(2019年安徽合肥期末)执行如图所示的程序框图,则输出结果为( ) A.2 C.4 【答案】C
【解析】依次执行框图中的语句:n=1,S=0,T=20;T=10,S=1,n=2;T=5,S=5
3,n=3;T=,S=6,n=4,满足T≤S,跳出循环,输出的n=4.故选C.
2
B.3 D.5
4.已知程序框图如图所示,该程序运行后,为使输出的b值为16,则循环体的判断框内①处应填( )
A.2 C.4 【答案】B
【解析】初始条件:a=1,b=1;第1次循环:b=2,a=2;第2次循环:b=4,a=3;第3次循环:b=16,a=4;为使输出的b值为16,此时应跳出循环,故判断框内可填a≤3.故选B.
5.执行如图所示的程序框图,则输出的结果是________.
B.3 D.5
21
【答案】 22
【解析】模拟执行程序框图,可得程序框图的功能是计算并输出S=+…+
111++1×22×33×4
1111111111
+的值.由于S=+++…++=1-+-20×2121×221×22×33×420×2121×22223
111112121+-+…+-=1-=,故输出的结果是. 342122222222
6.下面是一个算法的程序框图,当输入的x值为20时,其输出的结果是________.
【答案】0
【解析】运行程序:x=20≤0,不成立,x=20-3=17;x=17≤0,不成立,x=17-3=14;…;x=2≤0,不成立,x=2-3=-1;x=-1≤0,成立.∴y=ln 1=0,那么其输出的结果是0.故答案为0.
7.设计一个计算1×3×5×…×99的算法,画出程序框图. 解:算法如下: 第一步,令i=1,S=1. 第二步,S=S×i. 第三步,i=i+2.
第四步,判断i>99是否成立,若是,则输出S;否则,执行第二步. 程序框图如图所示.
8.运行如图所示的程序框图.
(1)若输入x的值为2,根据该程序的运行过程完成下面的表格,并求输出的i与x的值.
第i次 i=1 i=2 i=3 i=4 i=5 x=2×3i
(2)若输出i的值为2,求输入x的取值范围.
解:(1)
第i次 i=1 6 i=2 18 i=3 54 i=4 162 i=5 486 x=2×3i 因为162<168,486>168,所以输出的i的值为5,x的值为486. (2)由输出i的值为2,则程序执行了循环体2次,
??3x≤168,即???9x>168,
56
解得<x≤56,
3
所以输入x的取值范围是?
?56,56?.
??3?
【能力提升】
9.(2019年山西太原模拟)如图是一算法的程序框图,若输出结果为S=720,则在判断框中可填入的条件是( )
A.k≤6? C.k≤8? 【答案】B
【解析】第一次执行循环体,得到S=10,k=9;第二次执行循环体,得到S=90,k=8;第三次执行循环体,得到S=720,k=7,此时满足条件.故选B.
10.执行如图所示的程序框图,若输入的m=168,n=112,则输出的k,m的值分别为( )
B.k≤7? D.k≤9?
A.4,7 C.3,7 【答案】C
【解析】执行程序,k=1,m=84,n=56,m,n均为偶数;k=2,m=42,n=28,m,n均为偶数;k=3,m=21,n=14,因为m不是偶数,所以执行否.又m≠n,d=|21-14|=7,
B.4,56 D.3,56
m=14,n=7,m≠n;d=|14-7|=7,m=7,n=7,因为m=n,所以结束循环,输出k=3,m=7.
11.(2019年重庆期末)执行如图所示的程序框图,如果输出的k的值为3,则输入的a的取值范围为________.
【答案】[9,21)
【解析】根据程序框图可知,若输出的k=3,则此时程序框图中的循环结构执行了3次,执行第1次时,S=2×0+3=3,执行第2次时,S=2×3+3=9,执行第3次时,S=2×9+3=21,因此符合题意的实数a的取值范围是9≤a<21.
12. 某班共有学生50人,在一次数学测试中,要搜索出测试中及格(60分以上)的成绩,试设计一个算法,并画出程序框图.
解:算法步骤如下.
第一步,把计数变量n的初始值设为1.