第四章择路而行---选择结构程序设计
第一节路口诀择----条件语句
一、教学目标
1、掌握选择结构程序中常用的qbasic语句。
2、掌握选择结构程序设计方法。
3、能利用选择结构程序设计解决简单的实际问题。
二、教学重点:
1.选择结构的语句及功能
2.选择结构中程序设计方法。
三、教学方法:讲授法,对比法,分组讨论法。
四、教学时间:2课时
五、教学教程:
(一)引入新课:前面我们学习了顺序结构程序设计,利用顺序结构只能设计一些较简单的程序,如果要处理复杂的问题,就需要采用另外两种基本结构:选择结构和循环结构。选择结构,是一种常用的主要基本结构,是计算机科学用来描述自然界和社会生活中分支现象的重要手段。其特性是:无论分支多寡,必择其一;纵然分支众多,仅选其一。
(二)讲述新课
l 单行条件选择语句if
1、单行结构条件语句if…then…else
格式:if<条件>then<语句1>[else <语句2>]
功能:最简单的条件选择语句,用来进行条件判断,使语句有条件的执行。
说明:
1)当<条件>为真(非零数)时,则执行<语句1>。
2)else语句可以省略。
3)当<条件>为假(零)时,而且语句中有else语句则执行<语句2>。
4)if、then、else必须在同一行上。
2、示例 a、输入x的值,计算y的值。
rem 程序名为:eg1.bas
input“请输入x的值:”,x
ifx>=0theny=1+xelsey=1-2*x
print"y=";y
end
例: 求一元二次方程ax2+bx+c=0(a<>0)的实数根。
分析:写写出程序的流程图,参考流程图来写程序。
程序清单如下:
inputa,b,c
d=b*b-4*a*c
ifd<0thenthen
x1=(-b+sqr(d))/(2*a)
x2=(-b-sqr(d))/(2*a)
print“x1=”;x1,“x2=”;x2
else
print“此方程无实根”
end
练习:
1、当x>=5时,输入x的值并计算表达式y=2x-5的值。
inputx
ifx>=5theny=2*x-5
printy
end
2、输入a、b、c三个数,要求将绝对值最大者打印出来。
inputa,b,c
ifabs(a)>abs(b)andabs(a)>abs(c)thenprint“绝对值最大的为”;a
ifabs(b)>abs(a)andabs(b)>abs(c)thenprint“绝对值最大的为”;b
ifabs(c)>abs(a)andabs(c)>abs(b)thenprint“绝对值最大的为”;c
end
l 块结构条件语句if…then…else…endif
1、格式:if<条件1>then
[<语句组1>]
[elseif<条件2>then
[<语句组2>]]
[elseif<条件3>then
[<语句组3>]]
……
[else
[<语句组n+1>]]
endif
2、说明
then必须放在if或elseif语句的尾部。
3、举例
1)程序名为:eg2.bas
input"请输入x的值:",x
ifx>=0then
y=1+x
else
y=1-2*x
endif
print"y=";y
end
2)编写程序,任意输入一个整数,判定该整数的奇偶性。
讲解其中的一种方法,让学生想第二种方法。
input“enteranumber:”;n
ifnmod2=0thenprintn:“iseven”elseprintn:“isodd”共
end
或者用块if语句:
input“enteranumber:”;n
ifnmod2=0then
printn;“iseven”
else
printn;“isodd”
endif
end
*4、练习
任给定一年,判断该年是否闰年(闰年的条件:109页练习题8 yearmod4=0andyearmod100<>0oryearmod400<>0)
input“请输入年份”;year
ifyearmod4=0andyearmod100<>0oryearmod400<>0 then
printyear;“是闰年”
else
printyear;“是平年”
endif
六、小结(学生总结分支结构的程序设计)
七、作业:课后练习1-4题。
教学后记:
第二节指点迷津----selectcase语句
一、学习目标
了解selectcase的特点。
二、教学重点
掌握selectcase的使用方法。
三、教学难点
selectcase的应用。
四、教学方法
1.演示法。
2.实践法。
五、教学手段与教学媒体
多媒体网络教室。
六、课时安排
1课时。
用嵌套的if语句可实现多分支选择
1、基本格式
selectcase<变量>
case<值1>
<语句组1>case<值2>
<语句组2>…
case<值n>
<语句组n>caseelse
<语句组n+1>endselect
每一个case句中指定一个值条件,当case变量的值符合条件时,执行该子句下面的语名组,在执行完该语句组后,跳过其它case子句,从endselect转出。c=int(s/250)
2、在case子句中使用to
case <值1> to<值2>
3、在case子句中使用is
caseis<关系运算符><表达式>
4、在case子句中使用多个条件
允许在一个case子句中指定多个条件,各条件 之间用逗号分开。条件=单值、值范围、单条件
5、selectcase语句的一般格式
selectcase<测试表达式>
case<条件11>,<条件12>,…
<语句组1>case<条件21>,<条件22>,…
<语句组2>…
case<条件n1>,<条件n2>,…
<语句组n>caseelse
<语句组n+1>endselect
六、多分支转移语句
格式:on<算术表达式>goto<标号1>,<标号2>,…七、多分支选择结构小结
1、if-then-else(用if的嵌套) 分支(条件)较少时使用。 2、selectcase 分支(条件)较多时使用。 3、ongoto非结构化程序设计,不宜使用。
教学后记:
共