第一章 算法初步 1.1 算法与程序框图
1.1.2 程序框图与算法的基本逻辑结构
第2课时 条件结构
A级 基础巩固
一、选择题
1.下列算法中含有条件结构的是( ) A.求点到直线的距离 B.已知三角形三边长求面积
C.解一元二次方程x+bx+4=0(b∈R) D.求两个数的平方和
解析:A、B、D均为顺序结构,由于解一元二次方程时需判断判别式值的符号,故C选项要用条件结构来描述.
答案:C
4x,0
2.已知函数f(x)=?20,5
??56-4x,9
2
解析:本题给定的分段函数有三个选择,所以要在条件结构内嵌套条件结构,符合这一条件的只有D.
答案:D
3.已知如图所示的程序框图,若输入x=3,则输出y的值为( )
A.-2 B.0 C.2 D.3 答案:C
1
4.阅读下面的程序框图,若输入a,b,c分别是21,32,75,则输出的值是( )
A.96 B.53 C.107 D.128
解析:因为21<32,所以m=21+32=53,即输出的值为53. 答案:B
5.如图所示的程序框图,其功能是( )
A.输入a,b的值,按从小到大的顺序输出它们的值 B.输入a,b的值,按从大到小的顺序输出它们的值 C.求a,b的最大值 D.求a,b的最小值
解析:取a=1,b=2知,该程序框图输出b=2,因此是求a,b的最大值. 答案:C 二、填空题
6.已知函数y=|x-3|,如图所示程序框图表示的是给定x值,求其相应函数值的算法.请将该程序框图补充完整.其中①处应填________,②处应填________.
2
??x-3,x≥3,
解析:由f(x)=|x-3|=?及程序框图知,①处应填x<3?,②处应填
?3-x,x<3?
y=x-3.
答案:x<3? y=x-3
7.如图的程序框图的功能是计算函数________的函数值.
答案:y=|2x-3|
8.对任意非零实数a,b,若a?b的运算原理的程序框图如图所示.则3?2=________.
解析:由程序框图知,当a≤b时,输出3+1
出=2.
2
答案:2 三、解答题
9.写出输入一个数x,求分段函数y=?解:程序框图如下图所示:
b-1a+1
;当a>b时,输出.因为3>2,所以输ab?x,(x≥0),
的函数值的程序框图. x?e,(x<0)
3
10.设计算法判断一元二次方程ax+bx+c=0是否有实数根,并画出相应的程序框图. 解:算法步骤如下:
第一步,输入3个系数a,b,c. 第二步,计算Δ=b-4ac.
第三步,判断Δ≥0是否成立.若是,则输出“方程有实数根”;否则,输出“方程无实数根”.结束算法.
相应的程序框图如下图:
2
2
B级 能力提升
1.若输入-5,按图中所示程序框图运行后,输出的结果是( )
A.-5 B.0 C.-1 D.1
解析:因x=-5,不满足x>0,所以在第一个判断框中执行“否”,在第2个判断框
4
中,由于-5<0,执行“是”,所以y=1.
答案:D 2.已知函数y=?
?log2x,x≥2,?
??2-x,x<2,
如图表示的是给定x的值,求其对应的函数值y的程
序框图.①处应填写__________;②处应填写________.
解析:因为满足判断框中的条件执行y=2-x, 所以①处应填x<2?.
不满足x<2即x≥2时,y=log2x, 故②处应填y=log2x. 答案:x<2? y=log2x
3.某居民区的物业部门每月向居民收取卫生费,计费方法如下:3人和3人以下的住户,每户收取5元;超过3人的住户,每超出1人加收1.2元.设计一个算法,根据输入的人数,计算应收取的卫生费,并画出程序框图.
解:设费用用y(元)表示,人数用x表示,
?5(x≤3),?
则y=?
?5+1.2(x-3)(x>3).?
算法如下: 第一步,输入x.
第二步,若x≤3,则y=5,否则执行第三步. 第三步,y=5+1.2 (x-3). 第四步,输出y. 程序框图如下图所示.
5