1、第二节基本算法语句与算法案例三年2考高考指数:1.理解几种基本算法语句输入语句、输出语句、赋值语句、条件语句、循环语句的含义.2.了解简单的算法案例.1.利用算法语句写出程序是考查的重点,在内容上以条件语句和循环语句为主;2.在考查形式上以选择题和填空题为主,重在考查对算法语句和算法案例的理解和应用.1.条件语句(1)条件语句是表达_最常用的语句.(2)条件语句的格式及算法框图选择结构If 条件Then 语句1 End If条件假语句2语句2 Else语句1真【即时应用】(1)已知算法语句:输入xIfx0Theny=1Elsey=-1EndIf输出 y若输入x的值为3,则输出y的值是_.(2)
2、以下算法语句运行后实现的功能为_.输入a,b,cIf ba Then t=a a=b b=tEnd IfIfcaThent=aa=cc=tEndIfIfcbThent=bb=cc=tEnd If输出a,b,c【解析】(1)上述算法语句的功能是求函数的函数值,当x=3时,y=1.(2)从算法语句看,该题是将a,b,c按从大到小的顺序排列后再输出.答案:(1)1(2)将a,b,c按从大到小的顺序排列后再输出2.循环语句(1)算法中的_是由循环语句来实现的.(2)循环语句的格式For语句的一般形式是:_循环变量=初始值To终值循环体NextDo Loop语句的一般形式是:Do_Loop While
3、_循环结构For循环体条件为真【即时应用】(1)已知算法语句:S=1Fori=1 To 5S=3*SNext输出S以上算法语句运行后输出的结果是_.(2)以下算法语句运行后输出的结果为_.i=1Do i=i+2S=2*i+3Loop While ibThenm=aElsem=bEnd If输出 m(2)以下给出了一个程序,根据该程序回答:若输入4,则输出结果是_;该程序的功能所表达的函数解析式为_.输入xIfx3Theny=x*x-1 Elsey=2 End If EndIf输出 y【解题指南】本例中的两小题考查的是用条件语句表示的程序的运行,解题的关键是按照程序的顺序和条件语句的特点运行.【
4、规范解答】(1)输入a,b分别为2,3时,ab不成立,所以执行Else后面的语句,把b赋值给m,可知m=3,输出的结果是3.(2)当x=4时满足x3的条件,输出y=44-1=15,该程序表示的函数解析式是答案:(1)3(2)15 【反思感悟】解答或编写有条件语句的程序时注意条件满足与不满足所对应的不同结果,另外还要注意If-Then-Else-End If的配对,尤其在嵌套结构时,一层配对就是一个完整的选择结构,在书写程序时易漏掉某一部分.循环语句【方法点睛】循环语句的应用及注意点(1)循环语句在高考中常与统计或数列相联系.(2)在预先知道循环次数的循环结构中,For语句和Do Loop语句一
5、般可以互相转化,在预先不知道循环次数的循环结构中,不能用For语句,一般用Do Loop语句.【例2】设计一个计算135799的算法,并用循环语句(For语句)描述.【解题指南】这是一个计算从1开始50个连续奇数乘积的问题,用循环语句写出其算法.【规范解答】算法如下:1.S=1.2.i=3.3.S=Si.4.i=i2.5.如果i99,那么转到第3步.6.输出S.循环语句(For语句)为:S=1i=3For i=3 To 99 Step 2 S=S*iNext输出S【反思感悟】用Do Loop语句写算法时,要注意Loop While后面的条件,只要条件为真就执行循环体.【易错误区】循环结束条件的
6、确定致误【典例】(2012上饶模拟)下面是一个求20个数的平均数的程序,在横线上应填充()(A)i20(B)i20(C)i20(D)i20【解题指南】程序是利用循环求出20个数的和,再求这20个数的平均数,故结束条件应是满足累加了20个数,又计数变量i从1开始,故结束条件为i21或i20.【规范解答】选D.设20个数分别为x1,x2,x19,x20,由程序知:i=1时,进入循环S=0+x1=x1,i=2时,进入循环S=x1+x2,i=3时,进入循环S=x1+x2+x3,i=k时,进入循环S=x1+x2+xk,若有S=x1+x2+x20,则i=20时进入循环,i21或i20时退出循环.【阅卷人点
7、拨】通过阅卷数据分析与总结,我们可以得到以下误区警示和备考建议:失分警示在解答本题时,有以下两点易造成失误:(1)错选C.对循环过程不清楚,误解了Loop While表示的含义.(2)错选A.对Do Loop语句中的一般形式:Do循环体Loop While 条件为真中的条件为真没能理解.备考建议解决算法语句的有关问题时,还有以下几点易造成失误,备考时要高度关注:(1)对基本算法语句的功能及格式要求不熟悉.(2)条件语句中的嵌套结构混乱,不能用分段函数的形式直观描述.1.(2012衡阳模拟)下面程序运行后输出的结果为()a=0j=1Doa=(a+j)MOD 5j=j+1LoopWhile j5输出a(A)50(B)5(C)25(D)0【解析】选D.j=1,a=1;j=2,a=3;j=3,a=1;j=4,a=0;j=5,a=0.2.(2012大庆模拟)输入xIf x2Then y=2*x-3Else y=log2xEnd If输出y以上表示的函数表达式是_.【解析】所给语句是条件语句,表示的是分段函数答案:3.(2012韶关模拟)以下是计算1+2+3+4+100的算法框图,请用For语句写出对应的程序.【解析】i=1S=0Fori=1To100S=S+iNext输出S