高一数学算法初步测试题(共7页).doc
精选优质文档-倾情为你奉上 第一章 算法初步测试题 一、选择题:(本题共10小题,每小题4分,共40分,在每小题给出的四个选项中,只有一项是符合题目要求的)1.下列语言中,哪一个是输入语句 ( )A.PRINT B.INPUT C.IF D.LET2.右边程序的输出结果为 ( )X3Y4XXYYXYPRINT X,YA 3,4 B 7,7 C 7,8 D 7,113算法S1 m=a S2 若b<m,则m=bS3 若c<m,则m=dS4 若d<m,则 m=dS5 输出m,则输出m表示 ( ) Aa,b,c,d中最大值 Ba,b,c,d中最小值 C将a,b,c,d由小到大排序 D将a,b,c,d由大到小排序4下图给出的是计算的值的一个程序框图,其中判断框内应填入的条件是 ( )A. i<100 Bi>100 Ci>50 Di<505读程序甲:INPUT i=1 乙:INPUT I=1000 S=0 S=0 WHILE i1000 DO S=S+i S=S+i i=i+l I=i一1 WEND Loop UNTIL i<1 PRINT S PRINT SEND END对甲乙两程序和输出结果判断正确的是 ( ) A程序不同结果不同 B程序不同,结果相同 C程序相同结果不同 D程序相同,结果相同6在下图中,直到型循环结构为 ( )满足条件?循环体否是满足条件?循环体是否循环体满足条件?否是循环体满足条件?是否A B C D7用冒泡排序法将待排序的数据8,7,2,9,6从小到大进行排序,经过( )趟排序才能完成。 A2 B3 C4 D5 8数4557、1953、5115的最大公约数应该是 ( )A651 B217 C 93 D31 开始输入结束输出S,T否是9阅读下列程序:输入x;if x0, then y ;else if x 0, then y ;else y0;输出 y 如果输入x2,则输出结果y为A3 B3 C5 D510阅读右边的程序框,若输入的是100,则输出的变量和的值依次是 ( )A2550,2500B2550,2550C2500,2500D2500,2550二、填空题:(本大题共4小题,每小题5分,共20分 )11. 下列关于算法的说法,正确的是 。求解某一类问题的算法是唯一的;算法必须在有限步操作之后停止;算法的每一步操作必须是明确的,不能有歧义或模糊;算法执行后一定产生确定的结果a=0j=1WHILE j<=5a=(a+j) mod 5j=j+1WENDPRINT a END(第13题)12下面的程序输出的结果= I = 1While I<8S = 2I+3 I=I+2WENDPrint S(第12题)13. 上面程序运行后的结果为_(其中:“(a+j) mod 5”表示整数(a+j)除以5的余数)14. 程序框图如下:如果上述程序运行的结果为S132,那么判断框中应填入 三、解答题(共80分. 解答须写出必要的文字说明证明过程及演算步骤)15. (本小题满分12分)已知f(x)=x33x2+2x+1,写出任意一个x的值对应的函数值f(x)的求法程序.16. (本小题满分13分)画出求的值的算法流程图。17已知算法:(1)指出其功能(用算式表示),S1 输入xS2 若x <2,执行S3; 否则,执行S6S3 y = x21S4 输出yS5 执行S12S6 若2 < = x< 2,执行S7; 否则执行S10S7 y = xS8 输出yS9 执行S12S10 y = x21S11 输出yS12 结束。17题(2)将该算法用流程图描述之。18设计一个算法求:;试用流程图和相应程序表示19. 修订后的中华人民共和国个人所得税法规定,公民全月工资、薪金所得税的起征点为1600元,即月收入不超过1600元,免于征税;超过1600元的按以下税率纳税;超过部分在500元以内(含500元)税率为5,超过500元至2000元的部分(含2000元)税率为10,超过2000元至5000元部分,税率为15,已知某厂工人的月最高收入不高于5000元。(1)请用自然语言写出该厂工人的月收入与应纳税款的一个算法(不要写成程序框图或计算机程序);(2)将该算法用程序框图描述之。(3) 写出相应的计算机程序20. 中国网通规定:拨打市内电话时,如果不超过3分钟,则收取话费0.22元;如果通话时间超过3分钟,则超出部分按每分钟0.1元收取通话费,不足一分钟按以一分钟计算。设通话时间为t(分钟),通话费用y(元),如何设计一个程序,计算通话的费用。第一章 算法初步测试题 一、选择题:BDBA B ABCDA二、填空题:11 答案: 1217 13答案:0 14. 或14.解析:第一次循环时S1×12=12, K12-1=11, ;第二次循环时,S12×11=132,K11-1=10;此时S=132是题目中程序运行的结果,因此,循环必须终止;所以判断框中应填入的为“K10?”。三、解答题(共80分. 解答须写出必要的文字说明证明过程及演算步骤)15. 解:(方法一)INPUT “请输入自变量x的值:”;xA=x3B=3*x2C=2*xD=AB+C+1PRINT “x=”;xPRINT “f(x)=”;DEND(方法二)INPUT “请输入自变量x的值:”;xm=x*(x3)n=x*(m+2)y=n+1PRINT “x=”;xPRINT “f(x)=”;yEND16. 算法流程图如图所示: 17解:算法的功能为: 流程图如下:18.解:流程图如下: 相应程序如下:S=0i =1DO Loop UNTIL i >= 2009 Print SEND19. 解:(1)算法: 第一步 输入工资x (注x<=5000);第二步 如果x<=1600,那么y=0;如果1600<x<=2100,那么 y=0.05(x-1600);否则 y=25+0.1(x-2100)第三步 输出税款y, 结束。(2)程序框图为:(3) INPUT x(x<=00) IF x<=1600 THEN y =0 ELSE IF x<=1600 THEN y =0.05*(x1600)ELSE y=25+0.1(x-2100)END IF END IF PRINT y END20. 解:算法分析:数学模型实际上为:y关于t的分段函数。关系式如下:其中t3表示取不大于t3的整数部分。算法步骤如下:第一步:输入通话时间t;第二步:如果t3,那么y = 0.22;否则判断tZ 是否成立,若成立执行y= 0.2+0.1× (t3);否则执行y = 0.2+0.1×( t3+1)。第三步:输出通话费用c 。算法程序如下:INPUT “请输入通话时间:”;tIF t<=3 THENy=0.22ELSEIF INT(t)=t THENy=0.22+0.1*(t3)ELSEy=0.22+0.1*(INT(t3)+1)END IFEND IFPRINT “通话费用为:”;yEND专心-专注-专业