1.2.2 条件语句
[A 基础达标]
1.下面的问题中必须用条件语句才能实现的个数是( ) ①已知三角形三边长,求三角形的面积; ②求方程mx+n=0(m,n为常数)的根; ③求三个实数a,b,c中的最大者;
④求函数f(x)=ax+bx+c(a≠0)的图象的对称轴方程. A.4 C.2
B.3 D.1
2
解析:选C.①已知三角形三边长,求三角形的面积,直接代入公式,需要用顺序结构;②求方程mx+n=0(m,n为常数)的根,需要分类讨论m的取值,根据取值的不同,执行后面不同的算法;③求三个实数a,b,c中的最大者,需要用到条件语句;④求f(x)=ax+bx+
2
c(a≠0)的图象的对称轴方程,不需要用条件语句.
2.条件语句的一般形式为“IF A THEN B ELSE C”,其中语句C的作用是( ) A.条件语句
B.不满足条件时执行的内容 C.条件
D.满足条件时执行的内容
解析:选B.“IF A THEN B ELSE C”,先执行条件,若“真”,则执行B,若“假”,则执行C.
3.下面程序的算法功能是:判断任意输入的数x是不是正数,若是,则输出它的平方值;若不是,则输出它的相反数.
INPUT “x=”;x - 1 -
IF __________ THEN y=-x ELSE y=x*x END IF PRINT “y=”;y END 则横线处填入的条件应该是( ) A.x>0 C.x>=0
B.x<0 D.x<=0
解析:选D.条件成立时,执行y=-x;条件不成立时,执行y=x*x.由程序的算法功能,知条件应为x<=0,故选D.
4.(2019·福建省永春第一中学月考)根据下列算法语句,当输入x为60时,输出y的值为( )
INPUT x IF x<=50 THEN y=0.5*x ELSE y=25+0.6*(x-50) END IF PRINT y END A.25 C.31
B.30 D.61
解析:选C.因为x=60>50,所以y=25+0.6×(60-50)=31.故选C. 5.运行程序:
INPUT A,B IF A>B THEN C=A/2 ELSE C=B/2 END IF PRINT C END
- 2 -
在两次运行中分别输入8,4和2,4,则两次运行程序的输出结果分别为( ) A.8,2 C.4,2
B.8,4 D.4,4
解析:选C.对A、B的情况进行区分,当输入8,4的时候,A>B,所以C==4;当输
2入2,4时,A>B不成立,所以选择执行C==2.
2
6.执行下面的程序,如果输出的值是25,则输入的x的值为________.
INPUT x IF x<0 THEN y=(x+1)*(x+1) ELSE y=(x-1)*(x-1) END IF PRINT y END 解析:程序的功能是求函数 ?(x+1),x<0,?y=?的函数值. 2
?(x-1),x≥0?
???x<0,?x≥0,?由或?解得x=-6或x=6. 22?(x+1)=25??(x-1)=25,?
2
AB答案:6或-6
7.在下面这个程序中,
INPUT “a=”;a IF a>10 THEN b=a\\10+a MOD 10 ELSE b=a END IF PRINT b END 若输入a=35,则输出的b=________. 解析:a=35>10,故执行b=a\\10+a MOD 10,即b=35\\10+35 MOD 10=3+5=8. 答案:8
8.读下面的程序,并回答问题.
- 3 -