《算法初步检测题.doc》由会员分享,可在线阅读,更多相关《算法初步检测题.doc(5页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、算法初步检测题一、选择题1用“辗转相除法求得和的最大公约数是 A B C D答案:.D 解析: 是和的最大公约数,也就是和的最大公约数2当时,下面的程序段结果是 ( )i=1s=0WHILE i=4s=s*x+1i=i+1WENDPRINT sENDA B C D答案:C A 见课本赋值语句相关局部 3利用“直接插入排序法给按从大到小的顺序排序,当插入第四个数时,实际是插入哪两个数之间 A与 B与 C与 D与答案:B 解析 先比拟与,得;把插入到,得;把插入到,得;4对赋值语句的描述正确的选项是 可以给变量提供初值 将表达式的值赋给变量可以给一个变量重复赋值 不能给同一变量重复赋值A B C
2、D答案:A 解析 见课本赋值语句相关局部5在repeat 语句的一般形式中有“until A,其中A是 ( ) A 循环变量 B循环体 C终止条件 D终止条件为真答案:D 解析 Until标志着直到型循环,直到终止条件成就为止6用冒泡排序法从小到大排列数据 需要经过 趟排序才能完成。 A B C D答案:B 解析 经过第一趟得;经过第二趟得;经过第三趟得;经过第四趟得;经过第五趟得;二、填空题1根据条件把流程图补充完整,求内所有奇数的和;(1) 处填 (2) 处填 开始i:=1,S:=0i1000(1)(2)输出S结束否是答案:122图中所示的是一个算法的流程图,输出的,那么的值是_。答案:
3、解析 : 3以下各数 、 、 、 中最小的数是_。 答案:解析 : 、 、 、 4右图给出的是计算的值的一个流程图,其中判断框内应填入的条件是_。答案:5用直接插入排序时对:进行从小到大排序时,第四步得到的一组数为: _。答案:三、解答题1以下是计算程序框图,请写出对应的程序。解析: i=1sum=0WHILE i=0 and x=4 THEN y=2xELSE IF x=8 THEN y=8ELSE y=2*(12-x)END IFEND IFPRINT yEND3用辗转相除法或者更相减损术求三个数的最大公约数.答案:27.解析:324=243181 243=8130 那么 324与 243
4、的最大公约数为 81 又 135=81154 81=54127 54=2720 那么 81 与 135的最大公约数为27 所以,三个数 324、243、135的最大公约数为 27.另法为所求。4意大利数学家菲波拉契,在1202年出版的一书里提出了这样的一个问题:一对兔子饲养到第二个月进入成年,第三个月生一对小兔,以后每个月生一对小兔,所生小兔能全部存活并且也是第二个月成年,第三个月生一对小兔,以后每月生一对小兔.问这样下去到年底应有多少对兔子? 试画出解决此问题的程序框图,并编写相应的程序.解析:根据题意可知,第一个月有对小兔,第二个月有对成年兔子,第三个月有两对兔子,从第三个月开始,每个月的
5、兔子对数是前面两个月兔子对数的和,设第个月有对兔子,第个月有对兔子,第个月有对兔子,那么有,一个月后,即第个月时,式中变量的新值应变第个月兔子的对数(的旧值),变量的新值应变为第个月兔子的对数(的旧值),这样,用求出变量的新值就是个月兔子的数,依此类推,可以得到一个数序列,数序列的第项就是年底应有兔子对数,我们可以先确定前两个月的兔子对数均为,以此为基准,构造一个循环程序,让表示“第个月的从逐次增加,一直变化到,最后一次循环得到的就是所求结果. 流程图和程序如下:开始输出F结束I=I+1Q=SS=FF=S+QI12I=3S=1 Q=1NYS=1Q=1I=3WHILE I=12 F=S+Q Q=S S=F I=I+1WENDPRINT FEND