- 2021-06-08 发布 |
- 37.5 KB |
- 6页
申明敬告: 本站不保证该用户上传的文档完整性,不预览、不比对内容而直接下载产生的反悔问题本站不予受理。
文档介绍
高考数学专题复习:《算法初步》单元测试题2
《算法初步》单元测试题2 一、选择题 1、用冒泡排序法从小到大排列数据 需要经过( )趟排序才能完成。 A. B. C. D. 2、在repeat 语句的一般形式中有“until A”,其中A是 ( ) A. 循环变量 B.循环体 C.终止条件 D.终止条件为真 3、对赋值语句的描述正确的是 ( ) ①可以给变量提供初值 ②将表达式的值赋给变量 ③可以给一个变量重复赋值 ④不能给同一变量重复赋值 A.①②③ B.①② C.②③④ D.①②④ 4、利用“直接插入排序法”给按从大到小的顺序排序, 当插入第四个数时,实际是插入哪两个数之间 ( ) A.与 B.与 C.与 D.与 5、当时,下面的程序段结果是 ( ) i=1 s=0 WHILE i<=4 s=s*x+1 i=i+1 WEND PRINT s END A. B. C. D. 6、用“辗转相除法”求得和的最大公约数是( ) A. B. C. D. 二、填空题 7、用直接插入排序时对:进行从小到大排序时,第四步 得到的一组数为: ___________________________________。 8、右图给出的是计算的值的一个流程图,其中判断 框内应填入的条件是____________。 9、下列各数 、 、 、 中最小的数是____________。 10、图中所示的是一个算法的流程图,已知,输出的,则的值是____________。 11、根据条件把流程图补充完整,求内所有奇数的和; (1) 处填 (2) 处填 开始 i:=1,S:=0 i<1000 (1) (2) 输出S 结束 否 是 三、解答题 12、意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题:一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子? 试画出解决此问题的程序框图,并编写相应的程序. 13、用辗转相除法或者更相减损术求三个数的最大公约数. 14、函数,写出求函数的函数值的程序。 15、以下是计算程序框图,请写出对应的程序。 以下是答案 一、选择题 1、B 解析:经过第一趟得;经过第二趟得;经过第三趟得 ;经过第四趟得;经过第五趟得; 2、D 解析:Until标志着直到型循环,直到终止条件成就为止 3、A 解析:见课本赋值语句相关部分 4、B 解析:先比较与,得;把插入到,得;把插入到,得; 5、C 解析: 6、D 解析: 是和的最大公约数,也就是和的最大公约数 二、填空题 7、 ①; ②; ③;④ 8、 9、 、 、 、 10、 11、(1)(2) 三、解答题 12、解: 根据题意可知,第一个月有对小兔,第二个月有对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的兔子对数是前面两个月兔子对数的和,设第个月有对兔子,第个月有对兔子,第个月有对兔子,则有,一个月后,即第个月时,式中变量的新值应变第个月兔子的对数(的旧值),变量的新值应变为第个月兔子的对数(的旧值),这样,用求出变量的新值就是个月兔子的数,依此类推,可以得到一个数序列,数序列的第项就是年底应有兔子对数,我们可以先确定前两个月的兔子对数均为,以此为基准,构造一个循环程序,让表示“第×个月的从逐次增加,一直变化到,最后一次循环得到的就是所求结果. 流程图和程序如下: 开始 输出F 结束 I=I+1 Q=S S=F F=S+Q I≤12 I=3 S=1 Q=1 N Y S=1 Q=1 I=3 WHILE I<=12 F=S+Q Q=S S=F I=I+1 WEND PRINT F END 13、解: 324=243×1+81 243=81×3+0 则 324与 243的最大公约数为 81 又 135=81×1+54 81=54×1+27 54=27×2+0 则 81 与 135的最大公约数为27 所以,三个数 324、243、135的最大公约数为 27. 另法 为所求。 14、解:INPUT “x=”;x IF x>=0 and x<=4 THEN y=2x ELSE IF x<=8 THEN y=8 ELSE y=2*(12-x) END IF END IF PRINT y END 15、解: i=1 sum=0 WHILE i<=100 sum=sum+i i=i+1 WEND PRINT sum END查看更多