1、1.2.2 条件语句1理解条件语句(重点)2用条件语句编写程序(难点)3条件语句与条件结构的关系(易混点)基础初探教材整理 条件语句的格式、功能及结构阅读教材 P25 例 5 前面的内容,完成下列问题 .格式一 格式二条件语句IF 条件 THEN语句体END IFIF 条件 THEN语句体 1ELSE语句体 2END IF语句功能首先对 IF 后的条件进行判断,如果(IF) 条件符合,那么(THEN)执行语句体,否则执行 END IF 之后的语句首先对 IF 后的条件进行判断,如果(IF)条件符合,那么(THEN)执行语句体 1,否则(ELSE)执行语句体 2对应条件结构框图1判断(正确的打“
2、” ,错误的打“”)(1)条件语句的执行是按照程序中的先后顺序执行的( )(2)条件语句实现了程序框图中的条件结构( )(3)条件语句一定要完整,即 IFTHENELSEEND IF 中每一部分都不能少( )【答案】 (1) (2) (3)2条件语句对应的基本逻辑结构是( )A顺序结构 B条件结构C循环结构 D以上都不正确【解析】 条件语句对应的基本逻辑结构是条件结构,故选 B.【答案】 B3当 a3 时,下面的程序段输出的结果是_IF a 1 THENy 2*x 1ELSEy x2 2END IFPRINT “y ”;yEND1算法中需要根据情况判断,分类执行时,如求一个数的绝对值,比较两个
3、数的大小,求分段函数的函数值等,都需要用到条件语句2条件语句必须以 IF 语句开始,以 END IF 语句结束,即“IF END IF”必须成对出现3若程序只对条件满足时作处理,不用处理条件不满足时的情况,则选用“IFTHENEND IF”格式4解此类问题的步骤:(1)构思出解决问题的一个算法;(可用自然语言)(2)画出程序框图,形象直观地描述算法;(3)根据框图编写程序,即逐步把框图中的算法步骤用算法语句表达出来再练一题2根据下列算法语句,当输入 x 为 60 时,输出 y 的值为( )INPUT xIF x 50 THENy 0.5*xELSEy 25 0.6* x 50END IFPRI
4、NT yENDA25 B30C31 D61【解析】 由题意得 y Error!当 x60 时, y250.6 (6050)31.输出 y 的值为 31.【答案】 C嵌套条件语句的应用已知分段函数 yError!编写程序,要求输入自变量 x 的值,输出相应的函数值并画出程序框图. 【精彩点拨】 分 析 分 段 函 数 画 出 程 序 框 图 写 出 程 序 语 言【尝试解答】 程序框图如图所示:程序如下:INPUT xIF x0 THEN y 2*x2 1ELSE IF x 0 THEN y 1 ELSE y 2*x2 4 END IFEND IFPRINT yEND探究共研型两种条件语句的辨析
5、探究 1 两种条件语句的共同点是什么?【提示】 两种语句首先都要对条件进行判断,然后才执行相应的语句体;执行完语句体后,程序都交汇于一点完成条件语句;都以 IF 开始,以 END IF结束探究 2 两种条件语句的区别是什么?【提示】 IFTHENEND IF 语句只有一个语句体,是满足条件时执行的语句体;IFTHENELSEEND IF 语句含有两个语句体,满足条件时执行一个语句体,不满足条件时执行另一个语句体设计程序,使任意输入的两个不相等的实数按从大到小的顺序输出【精彩点拨】 输入的两个不相等的实数有两种可能:一是从大到小,二是从小到大如果是从大到小,则直接输出;如果是从小到大,则需交换其
6、顺序,然后再输出【尝试解答】 程序如下:INPUT a, bIF a b THENcaabbcEND IFPRINT a,bEND1条件语句的一般形式为: 其中 B 表示的是 ( )IF A THEN BELSE CA满足条件时执行的内容B条件语句C条件D不满足条件时,执行的内容【解析】 如果条件 A 成立,则执行 B 步骤,否则执行 C 步骤【答案】 A2对于下面程序:INPUT aIF a 5 THENb 4ELSEIF a 3 THENb 5 ELSEb 9END IFEND IFPRINT a,bEND如果在运行时,输入 2,那么输出的结果是( )A2,5 B2,4C2,3 D2,9【
7、解析】 输入 a 的值 2,首先判断是否大于 5,显然 2 不大于 5,然后判断 2 与 3 的大小,显然 2 小于 3,所以结果是 b5,因此结果应当输出 2,5.【答案】 A3给出以下程序:INPUT x1,x2IF x1 x2 THENx1 x1 x2END IFy x1 x2PRINT yEND如果输入 x1 2,x 23,那么执行此程序的结果是输出( )A7 B10C5 D8【解析】 由于输入的两个数 x12,x 23,不满足条件 x1x 2,因此,不执行语句体 x1x 1x 2,而直接执行 yx 1x 2,所以 y5,最后输出 5.【答案】 C4写出下列程序的运行结果INPUT a
8、IF a 0 THENb 0.5*aELSEb a2 3*a 1END IFPRINT bEND若 a4,则 b_;若 a4,则 b_.【解析】 分析程序可知,上述程序是一个分段函数的程序,即 bError!所以当 a4 时,b4 234129;当 a4 时,b0.5(4)2.【答案】 29 25编写一个程序,判断一元二次方程 x22x 3 0 有无实数根. 【解】 程序如下:a 1b 2c 3m b2 4*a*cIF m 0 THENPRINT “有 实 数 根 ”ELSEPRINT “不 存 在 实 数 根 ”END IFEND学业分层测评( 六) 条件语句(建议用时:45 分钟)学业达标一、选择题1求下列函数的函数值的算法中需要用到条件语句的函数为( )Af(x) 3x1 Bf(x)log 2xCf(x)Error! Df(x) e x【解析】 A、B、D 只用顺序结构就能描述算法,C 需要逻辑判断要用条件语句,故选 C.【答案】 C2阅读下列程序: