高中数学第一章 算法初步1.2 基本算法语句1.2.3循环语句练习题
展开1.2.3 循环语句
课时过关·能力提升
一、基础巩固
1.下列说法正确的是( )
A.当型(WHILE)循环结构不能转化为直到型(UNTIL)循环结构
B.当型(WHILE)循环结构先执行循环体,后判断条件
C.当型(WHILE)循环结构先判断条件,后执行循环体
D.以上说法都不正确
解析:当型循环是先判断条件后再决定是否执行循环体,直到型循环是先执行循环体,后判断条件,它们之间可以进行转化,故选C.
答案:C
2.要使下面的程序能运算出“1+2+…+100”的结果,需将语句“i=i+1”加在( )
S=0
i=1
①
WHILE i<=100
②
S=S+i
③
WEND
④
PRINT S
END
A.①处 B.②处
C.③处 D.④处
解析:“i=i+1”应在循环体中,并且先执行“S=S+i”后执行“i=i+1”,故应加在③处,故选C.
答案:C
3.下面为一个求10个数的平均数的程序,在横线上应填充的语句为( )
S=0
i=1
DO
INPUT x
S=S+x
i=i+1
LOOP UNTIL
a=S/10
PRINT a
END
A.i>10
B.i<10
C.i>=10
D.i<=10
解析:此为直到型循环,在程序一开始,即当i=1时,开始执行循环体,当i=10时,继续执行循环体,题目中求10个数的平均数,所以当i>10时应终止循环.
答案:A
4.下列程序中循环体运行次数是( )
i=40
DO
PRINT i
i=i+10
LOOP UNTIL i>90
END
A.4 B.5
C.6 D.60
解析:循环体第1次运行后,i=50,第2次运行后,i=60,第3次运行后,i=70,第4次运行后,i=80,第5次运行后,i=90,第6次运行后,i=100>90开始成立,循环终止,则共运行了6次.
答案:C
5.下列程序的功能是( )
S=1
i=1
WHILE S<=2016
i=i+2
S=S * i
WEND
PRINT i
END
A.计算1+3+5+…+2 016
B.计算1×3×5×…×2 016
C.求方程1×3×5×…×i=2 016中的i值
D.求满足1×3×5×…×i>2 016的最小整数i
解析:执行该程序可知S=1×3×5×…×i,当S≤2 016开始不成立,即S>2 016开始成立时,输出i,则求满足1×3×5×…×i>2 016的最小整数i.
答案:D
6.如图所示的程序运行后输出的第3个数是 .
i=1
x=1
DO
PRINT x
i=i+1
x=x+1/2
LOOP UNTIL i>5
END
解析:运行程序:第一次输出的数是1,第二次输出的数是x=1+,第三次输出的数是x==2.
答案:2
7.下列程序输出的结果是 .
a=1
b=1
WHILE b<5
c=a+b
a=b
b=c
WEND
PRINT b
END
解析:该程序的执行过程是:
a=1
b=1
b=1<5成立
c=1+1=2
a=1
b=2
b=2<5成立
c=1+2=3
a=2
b=3
b=3<5成立
c=2+3=5
a=3
b=5
b=5<5不成立
输出b=5.
答案:5
8.下面程序是求1+3+5+…+99的值,阅读程序完成问题.
i=1
p=0
WHILE i<=99
p=p+i
i=i+2
WEND
PRINT p
END
问题:
(1)程序中的循环语句是 型循环语句;
(2)将此程序用另一类型的循环语句来实现.
解:(1)当(WHILE)
(2)改成直到型循环语句如下:
i=1
p=0
DO
p=p+i
i=i+2
LOOP UNTIL i>99
PRINT p
END
9.写出求满足1+2+3+…+n>10 000的最小整数n的程序.
解:程序如下:
S=0
n=0
WHILE S<=10000
n=n+1
S=S+n
WEND
PRINT n
END
二、能力提升
1.下面的程序运行后,输出的i值等于( )
i=0
S=0
DO
S=S+i
i=i+1
LOOP UNTIL S>20
PRINT i
END
A.6 B.7 C.8 D.9
解析:第一次循环,S=0+0=0,i=0+1;
第二次循环,S=0+1=1,i=1+1=2;
第三次循环,S=1+2=3,i=2+1=3;
第四次循环,S=3+3=6,i=3+1=4;
第五次循环,S=6+4=10,i=4+1=5;
第六次循环,S=10+5=15,i=5+1=6;
第七次循环,S=15+6=21,i=6+1=7,
因为S=21>20,所以输出i=7.
答案:B
2.下面两个程序最后输出的“S”分别等于( )
i=1
WHILE i<8
i=i+2
S=2* i+3
WEND
PRINT S
END
i=1
WHILE i<8
S=2* i+3
i=i+2
WEND
PRINT S
END
A.17,17 B.21,21
C.21,17 D.14,21
解析:第一个程序中,i=7时执行循环体i=i+2,此时i为9,S=2×9+3=21,结束循环.第二个程序中,i=7时,S=2×7+3=17,然后执行i=i+2,此时i=9,结束循环.
答案:C
3.下面程序运行后输出的结果为( )
a=0
j=1
WHILE j<=5
a=(a+j)MOD 5
j=j+1
WEND
PRINT a
END
A.0 B.1 C.2 D.4
解析:当j=1时,余数a=1;当j=2时,余数a=3;当j=3时,余数a=1;当j=4时,余数a=0;当j=5时,余数a=0;当j=6时,不满足条件,此时退出循环.
答案:A
4.根据下列程序框图,把对应的程序中所缺少的语句补充完整.
i=1
S=0
DO
①
②
LOOP UNTIL ③
PRINT S
END
解析:由程序框图可知利用了直到型循环结构,对应的语句为直到型循环语句,DO后面执行的语句为循环体,故①②处应分别为S=S+i^2,i=i+1,直到满足条件i>100为止,所以③处应为i>100.
答案:①S=S+i^2 ②i=i+1 ③i>100
★5.下列循环体执行的次数是 .
k=8
WHILE k<>0
k=k-1
WEND
PRINT k
END
答案:8
6.根据下列程序,画出相应的程序框图.
S=0
k=1
DO
S=S+1/(k* (k+1))
k=k+1
LOOP UNTIL k>99
PRINT S
END
解:程序框图:
★7.下面程序的功能是输出1~100之间的所有偶数.
程序:
i=1
DO
m=i MOD 2
IF ① THEN
PRINT i
END IF
②
LOOP UNTIL i>100
END
(1)试将上面的程序补充完整;
(2)改写为含WHILE型循环语句的程序.
解:(1)①m=0 ②i=i+1
(2)改写为含WHILE型循环语句的程序如下:
i=1
WHILE i<=100
m=i MOD 2
IF m=0 THEN
PRINT i
END IF
i=i+1
WEND
END
人教版新课标A必修31.2.3循环语句一课一练: 这是一份人教版新课标A必修31.2.3循环语句一课一练,共7页。试卷主要包含了下列的程序执行后输出的结果是 ,下面的程序等内容,欢迎下载使用。
高中数学1.2.3循环语句同步训练题: 这是一份高中数学1.2.3循环语句同步训练题,共9页。试卷主要包含了选择题,填空题,解答题等内容,欢迎下载使用。
高中数学人教版新课标A必修31.2.3循环语句当堂达标检测题: 这是一份高中数学人教版新课标A必修31.2.3循环语句当堂达标检测题,共10页。试卷主要包含了 当时,下面的程序段结果是,把求的程序补充完整, 把程序框图补充完整, 下面程序运行后输出, 计算 ,写出算法的程序.等内容,欢迎下载使用。