教育资源1基础巩固一、选择题1.以下关于条件语句的说法,正确的是()A.条件语句的执行是按照程序中的先后顺序执行的B.条件语句实现了程序框图中的条件结构C.条件语句不能嵌套,即条件语句中不能再使用条件语句D.条件语句一定要完整,即IF-THEN-ELSE-ENDIF中每一部分都不能少[答案]B2.(2013·陕西)根据下列算法语句,当输入x为60时,输出y的值为()A.25B.30C.31D.61[答案]C[解析]60>50,所以y=25+0.6*(60-50)=31.3.(2015·辽宁石油化工大学附中检测)如图程序中,输出的是4,则输入的x可以是()INPUTxIFx<0THENx=-xENDIFy=PRINTyENDA.-8B.4C.8D.-16[答案]D[解析]本题考查条件语句的基本结构和功能.程序实现了函数y=|x|的功能;当输出4时,则4=|x|,故输入的x=±16,故选D.4.运行下列程序,当输入数值-2时,输出结果是()教育资源2A.7B.-3C.0D.-16[答案]D[解析]该算法是求分段函数y=3xx02x+1x=0-2x2+4xx0,当x=-2时的函数值,∴y=-16.5.阅读下列程序:若输入5,则程序远行的结果为()A.1B.10C.25D.26[答案]D[解析]a=5时,条件a5不成立,故执行ELSE后面的语句b=a2+1=26.二、填空题6.(2011·江苏)根据下面的程序,当输入a,b分别为2,3时,最后输出的m的值为________.INPUTa,bIFa>bTHENm=a教育资源3ELSEm=bENDIFPRINTmEND[答案]3[分析]由程序可以看出其中包含一个条件结构,根据a>b是否成立进而执行不同的语句,答案易得.[解析]该程序的功能是比较两个数的大小,输出两个数中的较大者,因为2<3,所以输出的m的值为3.7.认真阅读下面的程序,回答下列两问题.程序表示的是___________语句;程序表示的函数关系式是________.[答案]条件y=0.2,x≤2,0.2+x-,x>2[解析]本题程序应为一个条件语句,它是用来实现分段函数求值的.三、解答题8.读下列各题所给的程序,依据程序画出程序框图,并说明其功能:(1)INPUT“x=”;xIFx1ORx-1THENy=1ELSEy=0ENDIFPRINEyEND.(2)INPUT“输入三个正数a,b,c=”;a,b,cIFa+bcANDa+cbANDb+caTHENp=(a+b+c)/2S=SQR(p*(p-a)*(p-b)*(p-c))PRINT“三角形的面积S=”SELSE教育资源4PRINT“构不成三角形”ENDIFEND.[解析](1)此程序表达的是一个分段函数.当-1≤x≤1时,输出y的值为0,否则(当x-1或x1时),输出y的值为1.程序框图如图:(2)如图:这个程序是从键盘上输入三个正数(表示三条线段),检验这三个数是否为三角形的三条边长.如果是,求出三角形的面积,否则,输出“输入的三个数不是三角形三边长”的算法.[点评]框图中可合并为.能力提升教育资源5一、选择题1.阅读下面的程序a=33b=39IFabTHENt=aa=bb=ta=a-bPRINT“a=”;aENDIFEND该程序的运行结果为()A.33B.39C.6D.-6[答案]C[解析]程序的运行过程为:先将33赋给a,再将39赋给b,然后通过IF语句完成a,b两个变量的值的交换,且最终得a-b=6.2.阅读下面的程序:上述程序如果输入的值是51,则运行结果是()A.51B.15C.105D.501[答案]B[解析]a=51÷10=5,b=51MOD10=1,x=10×1+5=15.3.下列程序语句的算法功能是()INPUTa,b,cIFabTHENa=bENDIFIFacTHENa=cENDIF教育资源6PRINTaENDA.输出a,b,c三个数中的最大数B.输出a,b,c三个数中的最小数C.将a,b,c按从小到大排列D.将a,b,c按从大到小排列[答案]A[解析]由程序语句可知,当比较a,b的大小后,选择较大的数赋给a;当比较a,c的大小后,选择较大的数赋给a;最后打印a,所以此程序的作用是输出a,b,c中最大的数.[点评](1)将程序中ab,ac改为ab,ac,则结果是输出a,b,c中的最小值.(2)若要将a,b,c三数按从大到小顺序输出,则程序应改为:INPUT“a,b,c=”;a,b,cIFbaTHENt=aa=bb=tENDIFIFcaTHENt=aa=cc=tENDIFIFcbTHENt=bb=cc=tENDIFPRINTa,b,cEND(3)自己想一下,若要将从键盘输入的任意三个数按从小到大顺序输出,则应将上述语句怎样修改?二、填空题4.写出下列程序的运行结果教育资源7(1)INPUT“a=”;aIFa0PRINT“nosolution”;ELSEt=a;PRINTtENDIFEND输入a=-4,输出结果为________;输入a=9,输出结果为________.(2)输入x=6,则p=______;输入x=20,则p=______.(3)INPUT“x=”;xx=x+99IFx100THENPRINTxx=xMOD5ELSEx=SQR(x)ENDIFPRINTxEND输入x=100时,输出结果为________;输入x=-18时,输出结果为________.[答案](1)nosolution3(2)2.110.5(3)199,49.[解析](1)a=9不满足a0,故执行t=SQR(a),∴t=3.(2)x=6满足x≤10,∴p=6×0.35=2.1;x=20时不满足x≤10.教育资源8∴p=10×0.35+(20-10)×0.7=10.5.(3)x=100时,x=100+99=199100,∴先输出199,然后计算199MOD5=4,输出4;x=-18时,x=-18+99=81100不成立,∴执行ELSE后边的x=SQR(x),即x=81=9,输出9.5.阅读下面的程序:IFa5THENIFb4THENc=a-bELSEc=b-aENDIFELSEIFa3THENc=a*bELSEc=aMODbENDIFENDIFPRINTcEND(1)若a=4,b=3,上述程序运行结果是________;(2)若a=6,b=3,上述程序运行结果是________;(3)若a=2,b=6,上述程序运行结果是________;(4)若a=7,b=5,上述程序运行结果是________.[答案](1)12(2)3(3)2(4)-2[解析]该程序对应的函数为c=a-ba5且bb-aa5且babaa除以b所得的余数a(1)a=4,b=3,符合情形3,运行结果是12;(2)a=6,b=3,符合情形1,运行结果是3;(3)a=2,b=6,符合情形4,运行结果是2;(4)a=7,b=5,符合情形2,运行结果是-2.三、解答题6.已知函数y=f(x)的程序框图如图所示.教育资源9(1)求函数y=f(x)的表达式;(2)写出输入x的值计算y的值的程序.[解析](1)y=f(x=x+1,x>0,2+x,x=0,2x2,x<07.(2015·江西玉山检测)某商场为迎接店庆举办促销活动,活动规定:购物额在100元及以内不予优惠,在100~300元之间优惠5%,超过300元之后,超过部分优惠8%,原优惠条件仍然有效.写出顾客的购物额与应付金额之间的程序,要求输入购物额能够输出实付货款,并画出程序框图.[解析]设购物额为x元,实付货款为y元,则y=x0.95x285+-程序框图如图所示.教育资源10程序如下: