跟我学vb--第10课时_select_case语句
- 格式:doc
- 大小:317.50 KB
- 文档页数:11
select case语句
【学习目标】
(一)在知识与技能方面
1、掌握select case语句的格式、功能和执行过程。
2、理解表达式列表的3种形式(,和to与is)。
3、学会使用select case语句来实现选择控制结构,解决实际问题。
(二)在过程与方法方面
1、初步掌握程序调试运行的方法。
2、初步掌握优化程序的方法
(三)在情感态度与价值观方面
1、经历计算机解决问题的过程,体验成功的快乐。
2、在老师的指导下,与同学共同探究问题,让学生体验自主学习、协助学习的乐趣。【重点难点】
1、select case语句格式
2、表达式列表的3种形式
3、用select case语句解决实际问题
【教法学法】
问题教学法、讲练结合法
【学时】1学时
【教学环境】网络电脑室
引导学生分析上面程序存在的问题:
1、第1个程序用了5个if语句且条件表达式太复杂,书写容易出错。
2、在第2个程序中,用了4个if语句来处理5种情况,同时用到了if语句的嵌套
3、由于有if语句的嵌套及if语句过多,造成了程序可读性差,经常会出现“end if”配对错误或缺少“end if”。
那么如果我们再多一些情况,它的缺陷就会更加明显。
【教师引导】
有没有更简单一点的语句来解决这个问题,尽量避免出现上面的错误?
【引入】本节课的学习内容Select Case语句即可解决这种多情况的问题。
二、Select Case语句的格式
Select Case
语句是多分支语句,又称为多情况语句。
【教师展示】
1、Select Case
语句的格式
功能:根据“测
试表达式”的
值,
选择第一个符
合条件的语句
块执行。
2、说明:
···“测试表达式”可以是数值型或字符型;
···“测试表达式”和“表达式列表”的类型必须相同;
···“表达式列表”形式有以下3种:3、表达式列表的3种形式
【师生共同分析】
(1)用逗号隔
开的若干表达式
如:判断10以内整数的奇偶性 x=inputbox("输入一个整数") if x=1 or x=3 or x=5 or x=7 or x=9 then
print x; "这是奇数"
end if
select case
x
case 1,3,
5,7,9
print x; "这是
奇数"
case 2,4,
6,8,10
print x; "这是
偶数"
end select
(2)表达式1 To
表达式
2x=inputbox("
输入一个整数
")
select case if x>=80 and x<90 then print x; "该生成绩为良"
end if
x
case 80
to 89
x; "该生成绩为
良"
case 70
to 79
x; "该生成绩为
中"
end select
(3)Is 关系表
达式
x=inputbox("
输入一个整数
")
select case
x if x>=90 then print x ; "该生成绩为优" end if if x<60 then print x ; "该生成绩为不及格" end if
case
is>=90
x ; "该生成绩
为优"
case
is>=80
x ; "该生成绩
为良"
case
is<60
x ; "该生成绩
为不及格"
end select
【学生练习】
把刚才举例的“分数”问题用Select Case 语句改写一下,然后请同学来展示一下自己
的成果,同时比较一下自己与老师所写的程
序有什么不同。
【交流讨论】
1、is关系表达式在程序中的顺序可以调转吗?
2、Select Case语句的“测试表达式”“表达式列表”与if语句中“条件表达式”有什么时候不同?
【师生共同分析】
1、一个If语句要表示一种情况,而一个Select Case语句可以表示多个情况。
2、case中有很丰富的表达列表,如:①case 1,3,5表示当“表达式”的值为1,3,5中的任何一个值时执行下面的语句,if中要实现必须要用逻辑表达式来连接。②Case 10 to 20很容易来表示一个取值范围,即10到20之间的任何一个值时执行下面的语句,在if中就是一种复杂的条件。③Case is<=10表示小于或等于10时执行下面的语句,比条件if语句表示更加方便。
四、Select Case语句的执行流程
【师生共同小结】 Select Case语句的执行过程是:
先求“测试表达式”的值,然后顺序测试该值符合哪一个Case子句中情况,
执行顺序如下:
当测试表达式的值为表达式列表1时,执行语句组1;
当测试表达式的值为表达式列表2时,执行语句组2;
……
当测试表达式的值为表达式列表n时,执行语句组n;
当测试表达式的值不是上述值时,执行Case Else下面的语句组n+1;
然后执行End Select下面的语句。
【学生观察】教师逐语句运行程序,让学生观察程序的执行流程,加深理解。