资源描述
第一章 算法初步测试题
一、选择题:(本题共10小题,每小题5分,共50分,在每小题给出的四个选项中,只有一项是符合题目要求的)
1.下列语言中,哪一个是输入语句 ( )
A.PRINT B.INPUT C.IF D.LET
2.右边程序的输出结果为 ( )
X=3
Y=4
X=X+Y
Y=X+Y
PRINT X,Y
A. 3,4 B. 7,7
C. 7,8 D. 7,11
3.算法
S1 m=a
S2 若b<m,则m=b
S3 若c<m,则m=c
S4 若d<m,则 m=d
S5 输出m,则输出m表示 ( )
A.a,b,c,d中最大值 B.a,b,c,d中最小值
C.将a,b,c,d由小到大排序 D.将a,b,c,d由大到小排序
4.下图给出的是计算的值的一个程序框图,
其中判断框内应填入的条件是 ( )
A.. i<=100 B.i>100
C.i>50 D.i<=50
5.读程序
甲:INPUT i=1 乙:INPUT I=1000
S=0 S=0
WHILE i≤1000 DO
S=S+i S=S+i
i=i+l I=i一1
WEND Loop UNTIL i<1
PRINT S PRINT S
END END
对甲乙两程序和输出结果判断正确的是 ( )
A.程序不同结果不同 B.程序不同,结果相同
C.程序相同结果不同 D.程序相同,结果相同
6.在下图中,直到型循环结构为 ( )
满足条件?
循环体
否
是
满足条件?
循环体
是
否
循环体
满足条件?
否
是
循环体
满足条件?
是
否
A. B. C. D
7.用冒泡排序法将待排序的数据8,7,2,9,6从小到大进行排序,经过( )趟排序才能完成。
A.2 B.3 C.4 D.5
8.数4557、1953、5115的最大公约数应该是 ( )
A.651 B.217 C. 93 D.31
开始
输入
结束
输出S,T
否
是
9.阅读下列程序:
输入x;
if x<0, then y =;
else if x >0, then y =;
else y=0;
输出 y.
如果输入x=-2,则输出结果y为
A.3+ B.3-
C.-5 D.--5
10.阅读右边的程序框,若输入的是100,则输出的
变量和的值依次是 ( )
A.2550,2500
B.2550,2550
C.2500,2500
D.2500,2550
二、填空题:(本大题共5小题,每小题5分,共25分 )
11. 下列关于算法的说法,正确的是 。
①求解某一类问题的算法是唯一的;
②算法必须在有限步操作之后停止;
③算法的每一步操作必须是明确的,不能有歧义或模糊;
④算法执行后一定产生确定的结果
12.如下图所示程序框图,则该程序框图表示的算法的功能是 。
n= Input (“n=”);
i=1;
s=1;
while __ ___
___ _;
i = i+1;
end
s
(第15题)
a=0
j=1
WHILE j<=5
a=(a+j) mod 5
j=j+1
WEND
PRINT a
END
(第14题)
13.下面的程序输出的结果=
I = 1
While I<8
S = 2I+3
I=I+2
WEND
Print S
(第13题)
14. 上面程序运行后的结果为__________
(其中:“(a+j) mod 5”表示整数(a+j)除以5的余数)
15. 程序框图如下:
如果上述程序运行的结果为S=132,那么判断框中应填入
三、解答题(共75分. 解答须写出必要的文字说明.证明过程及演算步骤)
15. (本小题满分12分)
已知f(x)=x3-3x2+2x+1,画出任意一个x的值对应的函数值f(x)的求法程序框图.
16. (本小题满分12分)
画出求的值的算法流程图。
17.(本小题满分12分)
已知算法:(1)指出其功能(用算式表示),
S1 输入x
S2 若x <-2,执行S3; 否则,执行S6
S3 y = x^2+1
S4 输出y
S5 执行S12
S6 若-2 < = x< 2,执行S7; 否则执行S10
S7 y = x
S8 输出y
S9 执行S12
S10 y = x^2-1
S11 输出y
S12 结束。
17题
(2)将该算法用流程图描述之。
18.(本小题满分12分)
设计一个算法求:;试用流程图和相应程序表示.
19. (本小题满分13分)
中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按以一分钟计算。设通话时间为t(分钟),通话费用y(元),如何设计一个程序框图,计算通话的费用。
20. (本小题满分14分)
修订后的《中华人民共和国个人所得税》法规定,公民全月工资、薪金所得税的起征点为1600元,即月收入不超过1600元,免于征税;超过1600元的按以下税率纳税;超过部分在500元以内(含500元)税率为5%,超过500元至2000元的部分(含2000元)税率为10%,超过2000元至5000元部分,税率为15%,已知某厂工人的月最高收入不高于5000元。
(1)请用自然语言写出该厂工人的月收入与应纳税款的一个算法(不要写成程序框图或计算机程序);
(2)将该算法用程序框图描述之。
(3) 写出相应的计算机程序
第一章 算法初步测试题
一、选择题:BDBA B ABCDA
二、填空题:11. 答案:②③④ 12.17 13.答案:0 14. 或
14.解析:第一次循环时S→1×12=12, K→12-1=11, ;第二次循环时,S→12×11=132,K→11-1=10;此时S=132是题目中程序运行的结果,因此,循环必须终止;所以判断框中应填入的为“K≤10?”。
三、解答题(共80分. 解答须写出必要的文字说明.证明过程及演算步骤)
15. 解:(方法一)INPUT “请输入自变量x的值:”;x
A=x∧3
B=3*x∧2
C=2*x
D=A-B+C+1
PRINT “x=”;x
PRINT “f(x)=”;D
END
(方法二)INPUT “请输入自变量x的值:”;x
m=x*(x-3)
n=x*(m+2)
y=n+1
PRINT “x=”;x
PRINT “f(x)=”;y
END
16. 算法流程图如图所示:
17.解:算法的功能为:
流程图如下:
18.解:流程图如下: 相应程序如下:
S=0
i =1
DO
Loop UNTIL i >= 2009
Print S
END
19. 解:算法分析:数学模型实际上为:y关于t的分段函数。关系式如下:
其中[t-3]表示取不大于t-3的整数部分。
算法步骤如下:
第一步:输入通话时间t;
第二步:如果t≤3,那么y = 0.22;否则判断t∈Z 是否成立,若成立执行
y= 0.2+0.1× (t-3);否则执行y = 0.2+0.1×( [t-3]+1)。
第三步:输出通话费用c 。
算法程序如下:
INPUT “请输入通话时间:”;t
IF t<=3 THEN
y=0.22
ELSE
IF INT(t)=t THEN
y=0.22+0.1*(t-3)
ELSE
y=0.22+0.1*(INT(t-3)+1)
END IF
END IF
PRINT “通话费用为:”;y
END
20. 解:(1)算法:
第一步 输入工资x (注x<=5000);
第二步 如果x<=1600,那么y=0;如果1600<x<=2100,那么 y=0.05(x-1600);
否则 y=25+0.1(x-2100)
第三步 输出税款y, 结束。
(2)程序框图为:
(3) INPUT x (x<=5000)
IF x<=1600 THEN
y =0
ELSE IF x<=1600 THEN
y =0.05*(x-1600)
ELSE
y=25+0.1(x-2100)
END IF
END IF
PRINT y
END
展开阅读全文