高中二年级23程序的选择结构文档格式.docx
《高中二年级23程序的选择结构文档格式.docx》由会员分享,可在线阅读,更多相关《高中二年级23程序的选择结构文档格式.docx(8页珍藏版)》请在冰豆网上搜索。
所以上课时,把教材的导入例子作了的简单的处理,以求一个数的绝对值作为导入,学生更易理解条件语句的执行。
至于多种选择语句,教材选用一道求恩格尔系数,从而判断生活水平的高低的题目,授新课前,就简单说明一下,再用另一道根据学生分数判断该成绩是属于哪一个等级的题目作为实践,从而与学生的学习更有联系,提高学习兴趣。
2、预备知识
学生已掌握算法的概念及描述方法,定义常量与变量的方法,程序设计的四个步骤——分析问题、建立模型、设计算法和编写程序。
3、硬件要求
建议本节课在多媒体电脑教室中完成,有广播教学系统或投影仪。
4、所需软件
学生机要安装VB6.0或以上版本。
5、所需课时
2课时(100分钟)
四、教学过程
导入:
演示求一个数的绝对值这道题的程序,让学生明白通过程序可以解决数学中的问题,也给学生展示完整的程序代码,这道程序的功能就是靠这些代码来控制的,引起学生的注意,激发他们的求知欲。
一、演示上述的程序,并把程序代码中的各行代码的作用解释一遍,顺便把程序的执行流程说明一下,编写的程序与设计的算法是一致的。
程序2-3
Privatesubcommand1_click()
‘定义名为command1_click()的事件过程
DimAassingle
‘定义求绝对值的数A为单精度实型
A=inputbox(“r=”,”请输入半径”)
‘输入A的值
IfA>
=0then
‘如果A>
=0
Print“Y=”;
A
‘输出A的值
Else
-A
‘输出-A的值
Endif
Endsub
‘过程结束
二、条件语句
在解决问题的过程中,常常需要对事物进行判断和选择,如上题中,求一个数A的绝对值,如果A>
=0,则这个数的绝对值为A,否则为-A。
在程序设计中,如何实现判断和选择呢?
在上述代码中,有一个用if开头的语句,这就是条件语句。
(一)条件语句的基本格式是:
if条件then语句组1
else语句组2
或
if条件then
语句组1
else
语句组2
endif
其中,条件是一个逻辑表达式,语句组是一组VB的语句。
(二)条件执行语句的执行过程
条件语句的执行过程是:
当条件成立时,执行then后面的语句组1,否则执行语句组2,条件语句的执行流程图如下图所示。
在条件语句的基本格式中有时可以省略else和语句组2,这时条件语句的执行过程是当条件成立时,执行then后面的语句组1,否则退出条件语句,执行下面的语句。
(三)关系表达式
在程序2-3中,程序的第三行是一个条件语句,其中的条件A>
=0表达式,一般称为关系表达式,关系表达式是用关系运算符连接起来的式子。
关系运算符号有:
运算符号
=
>
>=
<
<=
<>
含义
等于
大于
大于等于
小于
小于等于
不等于
当关系表式成立时其值为真(Ture),当表达式不成立时其值则为假(False);
关系表达式的值既不是数值型量,也不是字符型量,而是一种新的数量类型——逻辑型。
逻辑型只有两个可能的值:
假(False)和真(Ture)。
关系表达式的值定义如下:
(1)对数值型的数据比较,是按照数值的大小来进行比较。
如13>
6的值为真。
(2)对其它类型数据的比较,则按照其序号进行比较。
如"D">
"B"其值为假。
2<
X<
(四)逻辑表达式
在实际问题中,对于一些复杂的条件,还需要几个关系表达式组合起来才能表示。
例如,条件2<
9就需要用2<
X和X<
9这两个表达式来表示.将多个关系表达式用逻辑运算符连接起来的式子称为逻辑表达式,逻辑表达式的运算值为逻辑型。
逻辑运算符有:
Not(非)取操作数相反的值。
即当操作数为假时,结果为真;
当操作数为真时,结果为假。
And(与)当两个操作数都为真时,结果才为真。
Or(或)当两个操作数都为假时,结果才为假。
(五)逻辑运算的顺序
(1)当条件中只有逻辑运算符时,运算的顺序为Not、And、Or
(2)当条件中既有算术运算符,又有关系运算符和逻辑运算符时,运算顺序是:
算术运算符,关系运算符,逻辑运算符
例如:
a+b>
c+danda>
=5ornotc>
0ord<
当a=5,b=7,c=2,d=1时,运算结果是真。
三、练习
四、练习
问题1:
某商场为了对苹果进行促销,规定购买2千克以上可以在原价每千克1.5的基础上打8折。
请设计一个程序计算购买x千克苹果的应付款。
(1)分析问题
设买苹果的重量为x千克,应付款为y元,如果x>
=2,则y=1.5*x*0.8,否则y=1.5*x。
(2)设计算法
①
输入x的值
②
如果x>
=2,则y=1.5*x*0.8
③
否则y=1.5*x
④
输出y的值
(3)编写程序
Privatesubcommand1_click()
Dimxassingle
x=Inputbox(“请输入购买苹果的重量”)
ifx>
=2then
y=1.5*x*0.8
y=1.5*x
endif
Print“应付款”;
y;
“元”
(4)调式程序
五、
多重选择语句
问题2:
输入一个成绩,如果90分以上,则输出“优秀”;
80-89,则输出“良好”;
70-79,则输出“中等”;
60-69,则输出“及格”;
60分以下则输出“不及格”,请编写程序。
如果这道题使用if语句来编写程序的话,程序如下:
程序2-4
Privatesubcommand_click()
X=inputbox(“请输入一个分数”)
IfX>
=90thenprint”优秀”
=80andX<
89thenprint”良好”
=70andX<
79thenprint”中等”
=60andX<
69thenprint”及格”
IfX<
60thenprint”不及格”
Endsub
在程序2-4中,使用了5个if语句来处理5种情况。
这样的程序在可读性和效率方面都是比较差的,如果再多一些情况,它的缺陷就会暴露得更加明显,如何处理这个问题呢?
(一)多重选择语句格式
在VB语言中,设置了一个处理多种情况的语句,称为多重选择语句,它的基本格式为:
selectcase表达式
case表达式列表1
case表达式列表2
……
caseelse
语句组N+1
endselect
其中
(1)表达式和表达式列表可以是数值型或字符型,表达式列表还可以是多个用逗号分开的表达式。
(2)表达式列表与表达式的类型必须相同。
(3)表达式列表又称值域,它有如下三种形式:
表达式1,表达式2,……
表达式1to表达式2
Is关系表达式
(二)多重选择语句的执行过程
多重选择语句的执行过程是:
当表达式的值为表达式列表1时,执行语句组1;
当表达式的值为表达式列表2时,执行语句组2;
……
当表达式的值为表达式列表N时,执行语句组N;
当表达式的值不是上述值时,执行语句组N+1;
有了多重选择语句,对于多种情况的选择问题,就可以利用它来解决。
运用多重选择语句编写问题2的程序如下:
X=inputbox(“请输入学生成绩”)
SelectcaseX
CaseIs>
=90
Print”优秀”
Case80to89
Print”良好”
Case70to79
Print”中等”
Case60to69
Print”及格”
Caseelse
Print”不及格”
Endselect
(三)练习
问题3:
我们把字符作如下的分类:
大写字母:
A…Z;
小写字母:
a…z;
数字:
0…9;
其它字符。
编写程序,根据上述分类的方法,输入一个字符,报告该字符所属的类型。
六、小结
与顺序结构相比较,选择结构就是程序的执行不再完全按照语句的顺序执行,而是根据某种条件是否成立来决定程序执行的走向,它进一步体现了计算机的智能特点。
在VB语言中,选择结构通过if语句和selectcase语句这两个条件语句来实现,运用条件语句的关键是条件的表示,如果能够正确地表达条件,就可以简化程序,在多重选择的情况下,使用selectcase语句,可以使程序更直观,更准确地描述出分支的走向。
五、课外拓展
问题4:
编一个程序,输入三个数,输出其中的最大数。
问题5:
自已上网查资料,搜集有关气象风级表的资料,比如说0级是属于无风,12级是属于飓风等,试编写程序,输入一个风级,输出相应的概况,名称,速度等。