高中数学人教A版必修三课下能力提升:(七) Word版含解析-
- 格式:doc
- 大小:109.18 KB
- 文档页数:7
1 课下能力提升(七)
[学业水平达标练]
题组1 UNTIL语句及应用
1.下列循环语句是程序的一部分,循环终止时,i等于( )
i=1DO i=i+1LOOP UNTIL i>4
A.3 B.4
C.5 D.6
2.下面程序输出的结果为( )
A.17 B.19
C.21 D.23
3.如果下列程序执行后输出的结果是132,那么在程序UNTIL后面的“条件”应为( )
i=12s=1DO s=s*i i=i-1LOOP UNTIL
PRINT sEND
A.i>11 B.i>=11
C.i<=11 D.i <11
题组2 WHILE语句及应用
4.下列循环语句是程序的一部分,循环终止时,i等于( )
i=1WHILE i<3 i=i+1WEND
A.2 B.3
2 C.4 D.5
5.求出下面语句的输出结果.
i=4S=0WHILE i<6 i=i+2 S=S+i^2WENDPRINT SEND
6.给出一个算法的程序框图(如图所示).
(1)说明该程序的功能;
(2)请用WHILE型循环语句写出程序.
题组3 循环语句的综合应用
7.已知有如下两段程序:
i=21sum=0WHILE i<=20 sum=sum+i i=i+1WENDPRINT sumEND i=21sum=0DO sum=sum+i i=i+1LOOP UNTIL i>20PRINT sumEND
程序1 程序2
程序1运行的结果为________,程序2运行的结果为________.
8.下面是“求满足1+2+3+…+n>2 014的最小的自然数n”的一个程序,其中有3处错误,请找出错误并予以更正.
3 i=1S=1n=0DO S=S+i i=i+1 n=n+1LOOP UNTIL S>2 014输出 n+1
[能力提升综合练]
1.如下程序的循环次数为( )
x=0WHILE x<20 x=x+1 x=x^2WENDPRINT xEND
A.1 B.2 C.3 D.4
2.读程序:
甲:
乙:
i=1S=0WHILE i<=1 000 S=S+i i=i+1WENDPRINT SEND i=1 000S=0DO S=S+i i=i-1LOOP UNTIL i<1PRINT SEND
对甲、乙程序和输出结果判断正确的是( )
A.程序不同,结果不同
B.程序不同,结果相同
C.程序相同,结果不同
D.程序相同,结果相同
3.(2015·北京高考)执行如图所示的程序框图,输出的k值为( )
4
A.3 B.4 C.5 D.6
4.(2016·吉林高一检测)已知有下面的程序,如果程序执行后输出的结果是360,那么在程序UNTIL后面的“条件”应为________.
i=6s=1DO s=s*i i=i-1LOOP UNTIL 条件PRINT sEND
5.在下面的程序中,若输出k=3,则输入的最小整数n=________.
INPUT nk=0DO n=2n+1 k=k+1LOOP UNTIL n>100PRINT kEND
6.编写一个程序计算12+32+52+…+992,并画出相应的程序框图.
7.输入100个数,将其中正数的个数输出.试用循环语句设计程序.
答 案
[学业水平达标练]
1. 解析:选C 该循环语句是直到型循环语句,当条件i>4开始成立时,循环终止,则i=5,故选C.
2. 解析:选C 当i=9时,S=2×9+3=21,判断条件9≥8成立,跳出循环,输出S.
3. 解析:选D 当i=12时,s=1×12=12;当i=11时,s=11×12=132.故应填i <11.
5 4. 解析:选B 该循环语句是WHILE语句,当条件i<3开始不成立时,循环结束,则所求i=3.故选B.
5. 解:该程序的执行过程是
i=4,S=0,i=4<6成立,i=4+2=6,S=0+62=36;
i=6<6不成立输出S=36.
6. 解:(1)该程序的功能是求1+12+13+…+199的值.
(2)程序如下:
S=0K=1WHILE K<=99 S=S+1/K K=K+1WENDPRINT SEND
7. 解析:程序1是计数变量i=21开始,不满足i≤20,终止循环,累加变量sum=0,这个程序计算的结果为0;程序2计数变量i=21,开始进入循环,sum=0+21=21,i=i+1=21+1=22,i >20,循环终止,此时,累加变量sum=21,这个程序计算的结果为21.
答案:0 21
8. 解:错误1:“S=1”改为“S=0”;
错误2:无END语句,在输出下面加“END”;
错误3:“输出n+1”改为“PRINT n”.
[能力提升综合练]
1. 解析:选C 程序执行如下:
(1)x<20,x=0+1=1,x=12=1;
(2) x<20,x=1+1=2,x=22=4,
(3) x<20,x=4+1=5,x=52=25,此时跳出循环,并输出x.
∴一共进行3次循环,故选C.
2. 解析:选B 执行甲、乙程序后,可知都是计算1+2+3+…+1 000的值.
3. 解析:选B 程序框图运行如下:k=0,a=3×12=32,k=1,此时32>14;a=32×12=34,k=2,此时34>14;a=34×12=38,k=3,此时38>14;a=38×12=316,k=4,此时316<14,输出k=4,程序终止.
4. 解析:因为输出的结果是360,即s=1×6×5×4×3,需执行4次,s需乘到3,i<3后结束算法.所以,程序中UNTIL后面的“条件”应为i<3(或i<=2).
6 答案:i<3(或i<=2)
5. 解析:设n=a,则第一次循环,n=2 a+1,k=1;第二次循环,n=2(2 a+1)+1=4 a+3,k=2;第三次循环,n=2(4 a+3)+1=8 a+7,k=3,此时,执行“是”,结束循环,输出k=3.因此8 a+7>100,即a>938,故n最小为12.
答案:12
6. 解:程序如下:
S=0i=1DO S=S+i^2 i=i+2LOOP UNTIL i>99PRINT SEND
程序框图如图所示:
7. 解:用WHILE语句编写程序如下:
n=1m=0WHILE n<=100 INPUT x IF x>0 THEN m=m+1 END IF n=n+1WENDPRINT mEND
或用UNTIL语句编写程序如下:
7 n=1m=0DO INPUT x IF x>0 THEN m=m+1 END IF n=n+1LOOP UNTIL n>100PRINT mEND