《数学必修3第一章算法初步单元检测题及答案.docx》由会员分享,可在线阅读,更多相关《数学必修3第一章算法初步单元检测题及答案.docx(9页珍藏版)》请在三一办公上搜索。
1、数学必修3第一章算法初步单元检测题及答案第一章 算法初步 一、选择题 1看下面的四段话,其中是解决问题的算法的是( ) A把高一5班的同学分成两组,高个子参加篮球赛,矮个子参加拔河比赛 B把高一5班的同学分成两组,身高达到或超过170 cm的参加篮球赛,不足170 cm的参加拔河比赛 C把a,b的值代入x,求方程axb的解 D数清海滩上有多少粒沙子 2用秦九韶算法求n次多项式 f(x)anxnan-1xn-1a1xa0,当xx0时,求 f(x0)需要算乘法、加法的次数分别为( ) An,n Bn,2n C2n,n D0,n ba3如下的程序框图,能判断任意输入的数x的奇偶性:其中判断框内的条件
2、是( ) Am0 Bx0 Cx1 Dm1 开始输入a,b,c开始 ab否a=b输入x m = x除以2的余数 ac是 否 否输出 “x是偶数” 输出 “x是奇数” a=c输出a结束 结束4给出以下一个算法的程序框图(如下图所示),该程序框图的功能是( ) A求输出a,b,c三数的最大数 B求输出a,b,c三数的最小数 C将a,b,c按从小到大排列 D将a,b,c按从大到小排列 5下图给出的是计算( ) Ai10 Bi10 Ci20 1 1214161的值的一个程序框图,其中判断框内应填入的条件是20 Di20 6下列给出的赋值语句中正确的是( ) A4M BMM C2BA3 Dxy0 7我国古
3、代数学发展一直处于世界领先水平,特别是宋、元时期的“算法”,其中可 以同欧几里得辗转相除法相媲美的是( ) A割圆术 B更相减损术 C秦九韶算法 D孙子剩余定理 8用二分法求方程 x220的近似根的算法中,用到的算法结构是( ) A顺序结构 B条件结构 C循环结构 9算法 第一步,ma 第二步,若 bm,则 mb 第三步,若 cm,则 mc 第四步,输出 m 此算法的功能是( ) A求 a,b,c 中的最大值 B求 a,b,c 中的最小值 D将a,b,c 由大到小排序 D以上都用 C将a,b,c 由小到大排序 10有一堆形状、大小相同的珠子,其中只有一粒重量比其他的轻,某同学经过思考,他说根据
4、科学的算法,利用天平,三次肯定能找到这粒最轻的珠子,则这堆珠子最多有几粒( ) A21 二、填空题 1下列关于算法中,说法正确的是 (填上正确的序号) 某算法可以无止境地运算下去 一个问题的算法步骤可以是可逆的 设计算法要本着简单方便可操作的原则 B24 C27 D30 完成一件事情的算法有且只有一种 2下列算法的功能是 S1 输入A,B; (A,B均为数据) S2 AAB,BAB,AAB; S3 输出A,B 3x2,x3已知函数f(x)流程图表示的是给定x值,求其相应函数值的算法请将该流程23x,x3图补充完整其中处应填_,处应填_若输入x3,则输出结果为_ 2 4在算法中,需要重复执行同一
5、操作的结构称为 5下列算法中含有选择结构的是 (写出正确的序号) 求点到直线的距离 已知梯形两底及高求面积 解一元二次方程 求两个数的积 6下列所画流程图是已知直角三角形两条直角边a、b求斜边的算法,其中正确的是 _(写出正确的序号) 三、解答题 1试写出判断直线AxByC0与圆(xa)2(yb)2r2(r0)的位置关系的算法 2读下列两个程序回答问题: (1) (2) x3; x3; y4; y4; xy; yx;y x x y 上述两个程序的运行结果是(1)_;(2)_ 上述两个程序的第三行有什么区别? 3 3编写一个程序,使得任意输入的3个整数按从大到小的顺序输出 4用两种不同的循环语句
6、写出求12221002的值的程序 4 参考答案 一、选择题 1BA何为高个子,何为矮个子,3x3;y3x2;5 根据给出函数的解析式可填写 4循环结构按循环结构的意义可得 标准不明确 C当a0时公式是无效的 D海滩上的沙子数目太多,步骤超出了合理的范围,所以不可取 只有B符合算法的三个要求,所以答案是B 2A根据秦九韶算法 3Ax除以2,如余数为0,则为偶数;余数不为0,则为奇数 4B从程序框图可知:输出的是三个数中的最小数 5A 这是一个10项求和问题 6B依据赋值语句的概念,选B是正确的 7B 8C由于二分法要多次二分逼近,所以为循环结构 C 9B此算法为求出 a,b,c 中最小值答案:选
7、B 10C最多为 3327 粒将27粒分成3组,每组9粒,任取两组称量,若一样重则轻球在另一组里若不一样重,则在较轻的那组中然后再分三组,任取两组称量,找出轻球所在一组;再分三组,任取二球称量,即可找到轻球此题若为 n 次,则最多 3n 粒 二、填空题 1由算法的特点所确定 2实现数据A,B的互换利用赋值语句的意义与题中算法的步骤进行分析 5解一元二次方程时,必须首先判断根的“判别式”的值与0的大小间的关系, 这便是条件判断,故解一元二次方程时需用选择结构 6、选项中的有些框图选用不正确;图中的输入变量的值应在公式给出之前完成 三、解答题 1分析:直线与圆有三种位置关系:若圆心到直线的距离dr
8、,则直线与圆相离;若dr,则直线与圆相切;若dr,则直线与圆相交因此,我们可先求出圆心到直线的距离d,然后与r比较 解:第一步:输入圆心的坐标(a,b),直线方程的系数A,B,C和半径r; 第二步:计算z1AaBbC; 第三步:计算z2A2B2; 第四步:计算dz1z; 2第五步:如果dr,则直线与圆相离; 第六步:如果dr,则直线与圆相切; 第七步:如果dr,则直线与圆相交 2解: 上述两个程序的运行结果是(1)4,4;(2)3,3 程序(1)中的第三行是将y的值赋给x,赋值后x的值变为4,y的值不变;程序(2)中的第三行是将x的值赋给y,赋值后y的值变为3,x的值不变 5 说明:用上述程序
9、不能实现两个变量的互换如果用赋值语句实现两个变量的互换,方法是引进第三个变量如要交换a,b的值,只需ca,ab,bc 数) S4:将b与c比较,如果bc,交换它们的值; (第4步后,b中存储的是次大的整数,对于一个变量,我们可以进行多次赋值,赋c中存储的是最小的整数) 值号左边的变量如果原来没有值,则执行赋值语S5:按顺序输出a,b,c 句后获得一个值;如果已有值,则执行语句后,解:a=input(“a=”); 以赋值号右边表达式的值代替该变量原来的值,b=input(“b=”); 即将原值“冲掉” c=input(“c=”); 3分析:我们用a,b,c表示输入的三个if ab 整数,比较三个
10、整数,把最大的整数存入变量a t=a,a=b,b=t; 中,次大的整数存入b中,最小的整数存入cend 中算法步骤为: if ac S1:输入三个整数a,b,c; t=a, a=c, c=t; S2:将a与b比较,如果ab,交换它们的end 值; if bc S3:将a与c比较,如果ac,交换它们的 t=b, b=c, c=t; 值; end (第2步和第3步后,a中存储的已经是最大的整print(%io(2),c,b,a) 4分析:若用while语句,循环终止条件为i100,用for语句其步长为1,终止为100 解:while语句: for语句: i=1; sum=0; sum=0; for i=1 : 100 while i=100 sum=sum+ii; sum=sum+ii; end i=i+1; print,sum) end print,sum) 6