章末质量评估(二)
(时间:100分钟 满分:120分)
一、选择题(本大题共10小题,每小题5分,共50分)
1.下列关于算法的叙述不正确的是 ( ).
A.在任何数值计算或非数值计算的过程中所采取的方法和步骤,都可称之为
算法
B.解决一类问题的方法和步骤
C.算法并不给出问题的精确的解,只是说明怎样才能得到解
D.算法中执行的步骤可以是无限次的,能无休止地执行下去
解析 本题主要考查算法的基本概念和特点:算法就是解决问题的方法,可以
是数值或者非数值操作,它必须是有限的步骤,不能无休止地执行下去,必须
“有始有终”.
答案 D
2.计算机的出现使我们可以处理计算量很大的问题,这主要归功于算法语句的 ( ).
A.输出(出)语句 B.赋值语句
C.条件语句 D.循环语句
答案 D
3.下列说法正确的是 ( ).
A.任何一个算法都是由顺序结构、选择结构、循环结构构成的
B.任何一个算法不一定含有顺序结构
C.选择结构中一定包含循环结构
D.循环结构中一定包含选择结构
解析 循环结构为从某点开始,按照一定条件,反复执行某一处理步骤的结构,
显然循环结构中有关于条件的判断,因此循环结构中必包含选择结构.
答案 D
4.计算下列各式中的S的值,能设计算法求解的是 ( ).
①S=1+2+3+…+100;②S=1+2+3…;③S=1+2+3…+n(n≥2且n∈Z)
A.①② B.①③ C.②③ D.①②③
解析 因为算法步骤具有“有限性”特点,故②不可用算法求解.
答案 B
5.将两个数a=8,b=17交换,使a=17,b=8,下面语句正确的一组是( ).
A. B. C. D.
解析 实现a,b的交换,由变量的特点知不能直接用a=b,b=a来交换,A、
B都不对,而D中变量没有赋值,故C正确.
答案 C
6.下列算法的功能是 ( ).
S=1
For i=2 To 68
S=S*i
i=i+2
Next
输出S
A.求2×6×…×68的值
B.求1×2×3×4×…×68的值
C.求2×4×6×…×68的值
D.求2×4×…×66的值
答案 C
7.语句Y=X表示的意义是 ( ).
A.把X的值赋给Y B.把Y的值赋给X
C.把X、Y的赋值互换 D.变量X、Y的值相等
答案 A
8.下面的框图表示的算法是 ( ).
A.求1+2+3+…+100
B.求12+22+32+…+1002
C.求1+3+5+…+99
D.求12+32+52+…+992
答案 D
9.找出乘积为840的两个相邻偶数,程序框图见右图,其中填充 ① 、 ② 、 ③ 处语句正确的选项是 ( ).
A.S=i*(i+2) 输出i 输出i-2
B.S=i*i+2 i=i+2 输出i-2
C.S=i*(i+2) 输出i 输出i+2
D.S=i*i+2 输出i 输出i+2
答案 C
10.如果执行下面的算法框图,那么输出的S为 ( ).
A.2 550 B.-2 550 C.-2 552 D.2 548
解析 这个算法是计算-2+0+2+4+…+100的算法,结果为-2+
=2 548.
答案 D
二、填空题(本题6个小题,每小题5分,共30分)
11.已知数列:2,5,7,8,15,32,18,12,52,8,写出从该数列中搜索18的一个算法:
第一步,输入实数a;
第二步,____________;
第三步,输出a=18.
答案 如果a=18,那么a就是所搜索的数,否则重复第一步
12.
i=1
S=0
DO
S=S+i
i=i+2
LOOP UNTIL i>5
PRINT S
END
执行的结果是________.
答案 9
13.已知A(x1,y2),B(x2,y2),是平面上任意两点,以下给出的语句描述的是求线段AB中点坐标的算法.请在横线上填上适当的语句,完成算法的功能.
(1)输入x1,x2,y1,y2;
(2) ① ;
(3) ② ;
(4)输出x0,y0.
解析 运用赋值语句,实际上为线段的中点坐标公式.
答案 ①x0= ②y0=
14.某算法的程序框图如图所示,则输出量y与输入量x满足的关系式是________.
解析 当x>1时,有y=x-2,当x≤1时,有y=2x,所以,有分段函数
y=
答案 y=
15.为了在运行下面的算法之后能够输出y=9,键盘输入的x应该是________.
输入 x
If x<0 Then
y=(x+1)*(x+1)
Else
y=(x-1)*(x-1)
End If
输出y
解析 本题中的算法是求分段函数
y=的函数值.
当y=9时,x=4或x=-4.
答案 4或-4
16.有如图所示的程序框图.
则该框图输出的结果是________.
解析 i=3时,i≤10 000成立,
i=i+2,i=5,5≤10 000成立,
i=7,…,当i=10 001时,
10 001≤10 000不成立,
输出10 001-2=9 999.
答案:9 999
三、解答题(每小题10分,共40分)
17.如图所示的算法框图,根据该图和下列各小题的条件回答问题.
(1)该算法框图解决的是一个什么问题?
(2)当输入的x值为0和4时,输出的值相等,问当输入的x
的值为3时,输出的值为多大?
(3)在(2)的前提下,要想使输出的值最大,输入的x的值应为
多大?
(4)在(2)的前提下,按照这个算法框图,当x值都大于2时,
x值大的输出的y值反而小,为什么?
(5)在(2)的前提下,要想使输出的值等于3,输入的x应是多少?
(6)在(2)的前提下,要想使输入的值与输出的值相等,输入的值应是多大?
解 (1)该算法框图解决的是求函数f(x)=-x2+mx的函数值的问题,其中输入
的是自变量x的值,输出的是x对应的函数值.
(2)x=0时,y=0,又x=4时,y=-16+4m,
∴4m-16=0,∴m=4.
∴当x=3时,输出的值为y=-32+4×3=3.
(3)y=-x2+4x=-(x-2)2+4,
∴当输入的x值为2时,输出的值最大.
(4)当x>2时,y=-(x-2)2+4为减函数,
所以x增大时,输出的y值反而小.
(5)令-x2+4x=3,即x2-4x+3=0,
∴x=1或x=3,
∴输入的值应为1或3.
(6)令-x2+4x=x,得x=3或x=0.
∴输入的值应为3或0.
18.已知函数f(x)=,画出求函数值的算法框图,并写出相应
的算法语句.
19.给出以下10个数:4,10,70,33,95,74,29,17,60,30.要求将大于40的数找出来,画出求解该问题的算法框图,并写出算法.
解 算法框图如下:
算法如下:
i=1
Do
输入 x
If x>40 Then
输出x
End If
i=i+1
Loop While i<=10
20.读下面的程序,并回答问题.
输入x
If x<=2 Then
y=x^3
Else
If x<=5 Then
y=3*x-2
Else
y=1/x
End If
End If
输出 y
该算法的作用是输入x的值,输出y的值.
(1)画出该算法对应的算法框图;
(2)若要使输入的x值与输出的y值相等,问这样的x值有几个?
解 (1)算法对应的算法框图如图所示:
(2)若x=x3,则x=0或x=1或x=-1.
此时均满足x≤2.
若3x-2=x,则x=1,不满足2若=x,则x=±1,不满足x>5
综上可知满足题设条件的x值有3个,即
x=0或x=1或x=-1.