高中数学第2章算法初步章末综合测评北师大版必修.docx
《高中数学第2章算法初步章末综合测评北师大版必修.docx》由会员分享,可在线阅读,更多相关《高中数学第2章算法初步章末综合测评北师大版必修.docx(13页珍藏版)》请在冰豆网上搜索。
![高中数学第2章算法初步章末综合测评北师大版必修.docx](https://file1.bdocx.com/fileroot1/2022-10/20/037a17ac-40ba-4d7f-8b44-cd6b46cb7d44/037a17ac-40ba-4d7f-8b44-cd6b46cb7d441.gif)
高中数学第2章算法初步章末综合测评北师大版必修
章末综合测评
(二) 算法初步
一、选择题(本大题共12小题,每小题5分,共60分.在每小题给出的四个选项中,只有一项是符合题目要求的)
1.下面的叙述中,不是解决问题的算法的是( )
A.从北京到海南岛旅游,先坐火车,再坐飞机抵达
B.按顺序进行下列运算:
1+1=2,2+1=3,3+1=4,…,99+1=100
C.方程x2-4=0有两个实根
D.求1+2+3+4+5的值,先计算1+2=3,再计算3+3=6,6+4=10,10+5=15,最终结果为15
【解析】 算法是解决某类问题的一系列步骤或程序,C只是描述了事实,没有解决问题的步骤.
【答案】 C
2.用二分法求方程x2-10=0的近似根的算法中要用哪种算法结构( )
A.顺序结构 B.选择结构
C.循环结构D.以上都用
【解析】 由求方程x2-10=0的近似根的算法设计知以上三种结构都用到.
【答案】 D
3.下列程序中的For语句终止循环时,S等于( )
S=0
For M=1 To 10
S=S+M
Next
输出S.
A.1 B.5
C.10 D.55
【解析】 S=0+1+2+3+…+10=55.
【答案】 D
4.下列给出的赋值语句中正确的是( )
A.0=MB.x=-x
C.B=A=-3D.x+y=0
【解析】 赋值语句不能计算,不能出现两个或两个以上的“=”且变量在“=”左边.
【答案】 B
5.当A=1时,下列程序
输入 A;
A=A*2
A=A*3
A=A*4
A=A*5
输出A.
输出的结果A是( )
A.5B.6
C.15D.120
【解析】 运行A=A*2得A=1×2=2.
运行A=A*3得A=2×3=6.
运行A=A*4得A=6×4=24.
运行A=A*5得A=24×5=120.
即A=120.故选D.
【答案】 D
6.(2014·福建高考)阅读如图1所示的程序框图,运行相应的程序,输出的n的值为( )
图1
A.1B.2
C.3D.4
【解析】 当n=1时,21>12成立,执行循环,n=2;当n=2时,22>22不成立,结束循环,输出n=2,故选B.
【答案】 B
7.(2016·菏泽高一检测)执行如图2所示的算法框图,输出的S值为( )
图2
A.2B.4
C.8D.16
【解析】 运行如下:
①k=0,S=1;②S=1×20=1,k=1;③S=1×21=2,k=2;④S=2×22=8,k=3.此时输出S.
【答案】 C
8.(2015·福建高考)阅读如图3所示的程序框图,运行相应的程序,若输入x的值为1,则输出y的值为( )
图3
A.2 B.7
C.8 D.128
【解析】 由程序框图知,y=
∵输入x的值为1,比2小,∴执行的程序要实现的功能为9-1=8,故输出y的值为8.
【答案】 C
9.(2016·北京高考)执行如图4所示的程序框图,若输入的a值为1,则输出的k值为( )
图4
A.1B.2
C.3D.4
【解析】 开始a=1,b=1,k=0;
第一次循环a=-,k=1;
第二次循环a=-2,k=2;
第三次循环a=1,条件判断为“是”,跳出循环,此时k=2.
【答案】 B
10.阅读如图5所示的算法框图,若输出s的值为-7,则判断框内可填写
( )
图5
A.i≥3B.i≥4
C.i≥5D.i≥6
【解析】 此算法框图运行如下:
①i=1,s=2;②s=1,i=3;③s=-2,i=5;④s=-7,i=7此时应结束循环.
所以i=5时不满足循环条件,i=7时满足循环条件.
【答案】 D
11.当a=16时,下面的算法输出的结果是( )
Ifa<10Then
y=2*a
Else
y=a*a
EndIf
输出y.
A.9B.32
C.10D.256
【解析】 该程序是求分段函数y=的函数值,所以当a=16时y=162=256.
【答案】 D
12.阅读如图6所示的程序框图,运行相应的程序,若输入m的值为2,则输出的结果i=( )
图6
A.2B.3
C.4D.5
【解析】 m=2,A=1,B=1,i=0.
第一次:
i=0+1=1,A=1×2=2,
B=1×1=1,A>B;
第二次:
i=1+1=2,A=2×2=4,
B=1×2=2,A>B;
第三次:
i=2+1=3,A=4×2=8,
B=2×3=6,A>B;
第四次:
i=3+1=4,A=8×2=16,
B=6×4=24,A终止循环,输出i=4.
【答案】 C
二、填空题(本大题共4小题,每小题5分,共20分,将答案填在题中的横线上)
13.如图7是求12+22+32+…+1002的值的算法框图,则正整数n=________.
图7
【解析】 由题意知s=12+22+32+…+1002,先计算s=s+i2,i再加1,故n=100.
【答案】 100
14.下面的程序运行后输出的结果是________.
x=1
i=1
Do
x=x+1
i=i+1
LoopWhile i<=5
输出x.
【解析】 每循环一次时,x与i均增加1直到i>5时为止,所以输出的结果为6.
【答案】 6
15.如图8给出一个程序框图,其作用是输入x的值,输出相应的y的值,若要使输入的x的值与输出的y的值相等,则这样的x的值的集合为________.
图8
【解析】 这个程序框图对应的函数为
y=
当x≤2时,由x2=x,得x=0或1;
当2<x≤5时,由2x-3=x,得x=3;
当x>5时,由=x,得x=±1(舍),故x=0或1或3.
【答案】 {0,1,3}
16.已知程序:
【导学号:
63580032】
输入x;
If x>0 Then
y=3*x/2+3
Else
If x<0 Then
y=-3*x/2+5
Else
y=0
EndIf
EndIf
输出y.
若输出y的值为6,则输入x的值为________.
【解析】 由程序知,当x>0时,
+3=6.解得x=2;
当x<0时,
+5=6,解得x=-,
显然x=0不成立.
【答案】 2或-
三、解答题(本大题共6小题,共70分,解答应写出必要的文字说明,证明过程或演算步骤)
17.(本小题满分10分)下面给出了一个问题的算法:
1.输入x.
2.若x≥4,则y=2x-1;否则,y=x2-2x+3.
3.输出y.
问题:
(1)这个算法解决的问题是什么?
(2)当输入的x值为多少时,输出的y值最小?
【解】
(1)这个算法解决的问题是求分段函数y=的函数值.
(2)当x≥4时,y=2x-1≥7;当x<4时,y=x2-2x+3=(x-1)2+2≥2,所以ymin=2,此时x=1.即当输入的x值为1时,输出的y值最小.
18.(本小题满分12分)将某科成绩分为3个等级:
85分~100分为“A”;60分~84分为“B”;60分以下为“C”.试用条件语句表示某个成绩等级的程序(分数为整数).
【解】 程序:
输入x;
If x<60 Then
输出C
Else
If x<=84 Then
输出B
Else
输出A
End If
End If
19.(本小题满分12分)已知函数y=
画出算法框图并编写算法语句,输入自变量x的值,输出相应的函数值.
【解】 算法框图如图所示:
算法语句如下:
20.(本小题满分12分)给出30个数:
1,2,4,7,…,其规律是:
第1个数是1,第2个数比第1个数大1,第3个数比第2个数大2,第4个数比第3个数大3,依此类推.要计算这30个数的和,现已给出了解决该问题的算法框图(如图9所示),
图9
(1)请在图中处理框内①处和判断框中的②处填上合适的语句,使之能完成该题算法功能;
(2)根据算法框图写出算法.
【解】
(1)因为是求30个数的和.故循环体应执行30次,其中i是计数变量,因此判断框内的条件就是限制计数变量i的,故应为i>30.算法中的变量p实质是表示参与求和的各个数,由于它也是变化的,且满足第i个数比其前一个数大i-1,第i+1个数比其前一个数大i,故应有p=p+i.故①处应填p=p+i;②处应填i>30.
(2)根据框图.写出算法如下:
i=1
p=1
S=0
Do
S=S+p
p=p+i
i=i+1
LoopWhilei<=30
输出S.
21.(本小题满分12分)如图10所示,在边长为4的正方形ABCD的边上有一点P,沿着折线BCDA由点B(起点)向点A(终点)运动.设点P运动的路程为x,△APB的面积为y,求y与x之间的函数关系式.并写出算法,画出算法框图,写出程序.
图10
【解】 函数关系如下
y=
算法如下:
1.输入x.
2.如果0≤x≤4,则使y=2x;否则执行3.
3.如果4<x≤8,则使y=8;否则执行4.
4.如果8<x≤12,则使y=2(12-x);否则结束.
5.输出y.
算法框图如图所示:
算法语句:
输入x;
Ifx>=0 And x<=4 Then
y=2*x
Else
If x<=8 Then
y=8
Else
If x<=12 Then
y=2*(12-x)
EndIf
EndIf
EndIf
输出y.
22.(本小题满分12分)设计一个算法,求满足1×2+2×3+…+n×(n+1)<1000的最大整数n,画出框图,并用循环语句描述.
【解】 算法框图如下所示:
用语句描述为:
n=0
S=0
Do
n=n+1
S=S+n*(n+1)
LoopWhileS<1000
输出n-1.