《算法初步单元测试》由会员分享,可在线阅读,更多相关《算法初步单元测试(8页珍藏版)》请在金锄头文库上搜索。
1、算法初步单元测试B(本卷满分160)一、选择题:本大题共10小题,每小题5分,共50分.在每小题给出的四个选项中,有且只有一项是符合题目要求的,请把正确答案填在相应的括号( )内.1、下面四个问题中必须用条件结构才能实现的个数是 ( )已知梯形上下底为a,b,高为h,求梯形面积;求方程ax+b=0(a、b为常数)的根;求三个数a,b,c中的最小数;求函数的函数值A、1个B、2个C、3个D、4个2、有一堆形状、大小相同的珠子,其中只有一粒重量比其它的轻,某同学经过思考,他说根据科学的算法,利用天平,三次肯定能找到这粒最轻的珠子,则这堆珠子最多有几粒A、21 B、24 C、27 D、30 ( )3
2、、下面是一个算法的伪代码,如果输入的x值是20,则输出的y值是 ( )A、100B、50C、25D、1504、计算算法,图中给出了程序的一部分,则在横线上能填入的数是A、13.5 B、12.5 C、12 D、11.5 ( )S1For i From 1 To _ Step 2SSiEnd ForPrint S (第4题)S0For I From l To 1000 SS+IEnd For(第5题)Read xIf x5 Then y10xElse y7.5xEnd IfPrint y (第3题)5、对于所给的算法中,执行循环的次数是 ( )A1 000 B999 C1001 D9986、如图算
3、法输出的结果是 ( )A、满足135n2005的最小整数n B、 1+3+5+2005C、求方程135n=2005中的n值 D、13520057、 阅读下面的两个伪代码 甲 乙S0I1000While i1SS+iii-1End whilePrint SS0I1While i1000SS+iii+1End whilePrint S (第7题)S1I1While S2005ii+2SSiEnd whilePrint i (第6题) 其中对甲乙两程序和输出结果判断正确的是 ( )A、程序不同,结果不同 B、程序不同,结果相同C、程序相同,结果不同 D、程序相同,结果相同8、下面这段伪代码的功能是(
4、 )A、统计x1到x10十个数据中负数的个数 B、找出x1到x10十个数据中的负数C、判断x1的符号 D、求x1到x10十个数据中负数的和9、为了在运行下面的程序之后得到输出y16,键盘输入x应该是 ( )A、3或-3 B、 -5 C、-5或5 D、 5或-3READ xIf x0 then y (x+1)*(x+1) Else y (x-1)*(x-1) End ifPrint yEnd (第9题)i12s1WHILE条 件 s s * i i i1END WHILEPRINT sEND (第10题)n0Read x1,x2,x10For i From 1 To 10If xi 9 B、i
5、= 9 C、i = 8 D、i 8二、填空题:本大题共6小题,每小题5分,共30分.请把正确答案填在题中相应的横线上.11、对取某给定的值,用“秦九韶算法”设计求多项式的值时,应先将此多项式变形为 ,它共做了 次乘法 次加法。12、阅读下面所给伪代码,此段伪代码输出的结果是 ;13、如果在所给程序中运行后输出的结果为132,那么在程序While后面的“条件”应为_;a221i2While Mod(a,i)0 i i + 1End WhilePrint i (第12题)开始输入ns1i1i20是ss+1/(2i+1)ii+1输出s结束14题 14、图中所示的S的表达式为 ;15、下面是用伪代码写
6、出求成立的的最大整数值的算法过程,请将其补全。(1)初始值为;(2);(3);(4);(5);(6)如果,则执行语句(7),否则回到语句(2)继续进行;(7)打印;(8)程序终止。 (第16题)16、这是一个算法的操作说明:由语句(7)打印出的数值为 ; 三、解答题:本大题共5小题,共80分.解答应写出文字说明,证明过程或演算步骤.打印x1输入输出结束YesNo17(本题16分).对任意函数,可按图示构造一个数列发生器,其工作原理如下:输入数据,经数列发生器输出;若,则数列发生器结束工作;若,则将反馈回输入端再输出,并且依此规律继续下去.现定义.(I)若输入,则由数列发生器产生数列,请写出数列
7、的所有项;(II)若要数列发生器产生一个无穷的常数列,试求输入的初始数据的值;(III)若输入时,产生的无穷数列满足:对任意正整数,均有,求的取值范围.18、(本题16分)下面是计算应纳税所得额的算法过程,其算法如下:S1 输入工资x(x=5000);S2 如果x=800,那么y=0;如果800x=1300,那么 y=0.05(x-800);否则 y=25+0.1(x-1300)S3 输出税款y,结束。请写出该算法的伪代码及流程图。19、(本题16分)阅读流程图,解答下列问题: (1)变量y在这个算法中的作用是什么?(2)这个算法的循环体是哪一部分?功能是什么?(3)这个算法的处理功能是什么?
8、20、(本题16分)某城市现有人口总数为100万人,如果年自然增长率为1.2%,试解答下列问题: (1)写出该城市人口数y(万人)与年份x(年)的函数关系式; (2)用伪代码表示计算10年以后该城市人口总数的算法; (3)用流程图表示计算大约多少年以后该城市人口将达到120万人的算法。21、(本题16分)已知算法(1)、(2)试根据要求分别完成下列两道题: 算法(1) 算法(2)根据算法(1)的伪代码,指出相应 画出算法(2)的流程图,指出相应算法算法功能并画出相应的流程图。 功能并求出S值;江苏省溧阳中学2007-2008学年第一学期高二数学单元测试算法初步水平测试B答案及提示1、解析:选C
9、,都用条件结构。2解析:选C,每次平均分成3组,第三次只能为3个球分组,因此球的个数最多为。3、解析:选D。4、解析:选A,到13后就要退出循环体。5、解析:因为循环中step=1,初值为1,终值为1000,故循环的次数是1000,选A6、解析:选A。7、解析:选B,输出的结果都是1到1000的所有自然数的和。8、解析:选A,利用计数器统计负数的个数。9、解析:选C, x0 时,则,时,。10、解析:选B,因为11、解析: 3次 3次 12、解析:13,此算法表示能够整除221的第一个数。 13、解析:14、解析:15、解析:填16、解析:,(提示:转化为数列来解)三、解答题:本大题共5小题,
10、共80分.解答应写出文字说明,证明过程或演算步骤.17、解析:(I)的定义域为,因此只有三项;(II)要使该数列发生器产生一个无穷的常数数列,则有,则设,即,即时,因此当时,;时,().(III) 解不等式得,要使,则,由于,若,则不合题意;当时,且,依次类推可得数列的所有项均满足,综上所述,。开始结束输入x(x=5000)x=800x=1300输出yYYNN18、解析:开始结束S120输出xNY19、解:(1)变量y是循环变量,控制着循环的开始和结束(2)流程图的循环体是与之间的部分,其功能是判断年份是否是闰年,并输出结果(3)这个算法的处理功能是判断2000年-2500年中,哪些年份是闰年,哪些年份不是闰年,并输出结果。20、(1) (2)伪代码如下: (3)分析:即求满足的最小正整数,其算法流程图如图。21、(1)答:功能是求满足不等式的最大正整数。(或的最小正整数的前一个) (2)求整数a的所有比它小的正因数的和S=36