限时作业66 基本算法语句
1.运行下列程序时,若输入2,则输出的结果是____________. INPUT A
A=A 2
*
A=A 3
*
A=A 4
*
PRINT A
END
解析:2×2×3×4=48.
答案:48
WHILE循环语句的执行次数是( )
C.15
D.19 解析:解读程序时,可采用一一列举的形式:
(1)N=0+1=1;N=1×1=1;
(2)N=1+1=2;N=2×2=4;
(3)N=4+1=5;N=5×5=25.
故选A.
答案:A
3.运行下面的程序后输出的结果为__________.
x=-3
y=-10
IF y<0 THEN
x=2 y
*
ELSE
y=y^2
END IF
PRINT x,y
END
解析:因为y=-10<0,所以x=2×y=-20,而y的值不变,仍为-10.
答案:-20 -10
)
C.11,210
D.12,210 解析:采用一一列举的形式,寻求规律:
(1)x=100+10,k=1+1=2;
(2)x=100+2 10,k=2+1=3;
*
(3)x=100+3 10,k=3+1=4;
*
…
(11)x=100+11 10=210>200,k=11+1=12,
*
故选D.
答案:D
__________.
解析:程序执行如下:
(1)j=1+1=2,j=2+1=3;
(2)j=3+1=4,n=0+1=1,j=4+1=5;
(3)j=5+1=6,j=6+1=7;
(4)j=7+1=8,n=1+1=2,j=8+1=9;
(5)j=9+1=10,j=10+1=11;
(6)j=11+1=12,n=2+1=3,j=12+1=13.
答案:3
_________.
解析:本题实质是用辗转相除法求两数的最大公约数,程序执行如下:
m =238,n =102
(1)r =34,m =102,n =34;
(2)r =0,m =34,n =0.
故程序输出的结果为34.
答案:34
7.已知下列程序:
h =0
k =0
p =0
q =0
i =1
DO
INPUT “x ,y =”;x,y
h =h+x
k =k+y
p =p+x^2
q =q+y^2
i =i+1
LOOP UNTIL i >20
h =h/20
k =k/20
Sx =SQR((p-20 h^2)/20)
*
Sy =SQR((q-20 k^2)/20)
*
PRINT “Sx =”;Sx,“Sy =”;Sy
END
阅读上述程序,解答下列问题:
(1)程序的横线上的内容可以改为______________;
(2)该程序的功能是___________________________;
(3)试用另一种循环结构的形式改写上述的程序.
解析:循环结构中累加变量从1取到20,因此总共输入了20个数对(x,y),循环终止后的h 是20个x 的和,k 是20个y 的和,∑∑====20
122012,i i i i y q x
p ,最后的h =x ,k =y . ∴程序的功能是计算输入的20个x 值的标准差和20个y 值的标准差.程序横线上“i >20”可以改为“i >=21”.
解:(1)i >=21
(2)计算输入的20个x 值的标准差和20个y 值的标准差
(3)该程序使用的循环结构是直到型循环结构,可以改为用当型循环结构表达的程序如下: h =0
k =0
p =0
q =0
i =1
WHILE i <=20
INPUT “x ,y =”;x,y
h =h+x
k =k+y
p =p+x^2
q =q+y^2
i =i+1
WEND
h =h/20
k =k/20
Sx =SQR((p-20 h^2)/20)
*
Sy =SQR((q-20 k^2)/20)
*
PRINT “Sx =”;Sx,“Sy =”;Sy
END
8.设计一个可以输入长方体的长a 、宽b 和高h ,再计算出该长方体的外接圆的体积和表面积的算法,并写出程序.
解:算法如下:
第一步:输入长方体的长a 、宽b 和高h. 第二步:计算外接圆的直径222c b a d ++=
. 第三步:计算体积36
1d V π=. 第四步:计算表面积S =πd 2.
第五步:输出V 和S.
程序如下:
INPUT a,b,h
p =a^2+b^2+c^2
d =SQR(p)
V =pi d^3/6
*
S =pi d^2
*
PRINT V
PRINT S
END
9.任意给一个实数,设计算法,并编写程序求它的算术平方根.
解:算法如下:
第一步:输入一个实数a.
第二步:若a 为负数,则输出:“a 没有算术平方根”;否则执行第三步. 第三步:计算a p =.
第四步:输出p.
程序如下:
INPUT a
IF a <0 THEN
PRINT “a 没有算术平方根”
ELSE
p =SQR(a)
END IF
PRINT p
END
10.编写程序求20
14131211-+-+- 的值. 解:i =1
S =0
DO
S =S+(-1)^(i+1)/i
i =i+1
LOOP UNTIL i >20
PRINT S
END
11.在所有的三位数中,如果该数等于三个数位上的数字的立方和,则称这样的数为水仙花数,编写程序找出100至1 000之间所有的水仙花数.
解:n =100
WHILE n <1 001
i =n\100
j =(n-i 100)\10
*
k =n-I 100-j 10
* *
IF n =i^3+j^3+k^3 THEN
PRINT n
END IF
n =n+1
WEND
END。