2.3程序的选择结构
程序的选择结构教学设计

程序的选择结构(一)教材分析使用教材:广东教育出版社出版的《算法与程序设计》(选修1)。
本节课的教学内容是2.3节“程序的选择结构”第二部分内容的第二节课。
对于教材2.3节的教学内容,学生都很感兴趣(因为属于算法的三大结构之一,学生对能用代码编写出来的程序还是感到新奇,故能比较好的吸引学生的学习兴趣),但是对其中相关的知识点,学生的认识还是很模糊的,尤其是条件语句的编写,大多数同学缺乏实践经验,因此如何引导学生学会使用条件语句来控制选择结构成为本节课的重点;而难点在于如何实现多个条件语句的编写,即条件语句的嵌套,并在掌握条件语句的基础上发现有问题程序的解决方法,成功调试运行。
这节课是下节课(2.3节)“程序的选择结构”中第三部分内容——多重选择语句的基础,只有真正落实好了教学,才能为后面课程开展打好坚实的基础。
(二)学生分析教学对象为高二的学生,在前面的教学中,他们已经学习过程序的顺序结构,(通过本课程前面的学习,)对程序结构方面有了一定的概念,但是还是处于兴趣大、认识模糊,实践少的范畴之内。
(三)学习目标1、知识与技能①能够顺畅阅读条件语句程序,充分理解条件语句的意义;②掌握条件语句的书写格式、功能和执行过程;③掌握程序调试、运行、查漏的方法。
2、过程与方法①掌握使用条件语句编写程序的主要方法。
②掌握使用条件语句嵌套来实现程序选择功能的主要方法。
③体验通过查找问题条件语句掌握条件语句编制的主要过程。
3、情感态度与价值观①培养学生遇到问题,通过自主学习寻找办法解决问题的能力;②帮助学生体验计算机解决问题的过程,获取成功的快乐;③认识程序编写的多元性,帮助其建立根据需求来编写语句的概念。
(四)教学重点分析①掌握使用条件语句编写程序的主要方法。
②能够读懂条件语句,理解条件语句执行的过程及实现的功能。
③掌握程序调试、运行、查漏的方法。
(五)教学难点分析①掌握使用条件语句编写程序的主要方法。
②掌握使用条件语句嵌套来实现程序选择功能的主要方法。
2.3.3 语句与程序结构——选择结构 教案

案例语句与程序结构——选择结构1. 《课程标准》要求·掌握一种程序设计语言的基本知识,使用程序设计语言实现简单算法。
·通过解决实际问题,体验程序设计的基本流程。
2. 教学目标·通过补充程序掌握选择结构在程序语言中的基本格式。
(计算思维)·根据流程图,初步学习双分支和多分支结构的基本格式,通过编写程序,体验程序设计的基本流程,领会选择结构的核心思想。
(计算思维)·通过解决生活中的实际问题,感受计算机编程的魅力。
(信息社会责任)3. 学业要求掌握一种程序语言的基本知识,利用程序设计语言实现简单算法,解决实际问题。
4. 教学对象分析从学生的认知水平来看,高中学生的逻辑思维能力逐步趋于成熟,能够有条理地表达一个过程或规则,为进一步发展学生的计算思维创造了条件。
学生通过前面章节的学习,已经掌握了用流程图描述算法的方法,能够运用恰当的描述方法和控制结构合理地表示简单算法,初步掌握了Python语言的变量赋值和表达式的正确书写,体验了顺序结构程序实现的方法。
学生初步尝试了顺序结构解决问题的过程,学习了简单的程序语言,但基本还停留在算法思想的阶段,无法感受到计算机编程的魅力,所以学生对通过具体的程序语言来实现简单的算法有着浓厚的兴趣,期待着能用计算机解决更多问题。
5. 教学重点与难点教学重点:理解选择结构思想,能用if语句编程实现分支问题的求解。
教学难点:理解多分支结构中各分支间的逻辑关系,能根据问题选择适当的语句编程解决问题。
6. 教学方法与教学手段教学方法:以问题引导和活动探究串联整个课堂。
教学手段:体验探究、小组活动为主。
2.3程序的基本结构

程序的基本结构:
①顺序结构:按照由上到下的顺序一行一行地执行。 程序中没有分支,没有重复。 ②选择结构:根据不同的条件判断来决定程序执行走 向的结构。程序中有分支,没有重复。 ③循环结构:根据条件判断,需要重复执行某一段代
码的程序。程序中可能存在分支和重复。
顺序结构
例:如书中图所示,有两个锥形瓶,1号瓶里 面装的是溴水,2号瓶里面装的是水,如果我 们要交换两个瓶子里的液体,该怎么办? 一般情况我们是用一个空瓶子作为“中转” 来解决这个问题的。 同理,在程序设计中我们也可以使用这种方 法来交换两个变量的值。我们把该问题转化 成两个变量的值利用VB编程来实现它。
一组枚举表达式(用逗号分隔)
60 关系运算符表达式
2, 4, 6, 8
to Is 100 < 60
例如:将例3.1 使用select case…..语句来实现的程序段如 下: Select Case x Case 90 to 100 Print "优秀" Case 80 to 89 Print "良好" Case 70 to 79 Print "中等" Case 60 to 69 Print "及格" Case Else Print "不及格" End Select
2.3
3.2 循环结构
循环语句
1. For循环语句 (一般用于循环次数已 知) 形式: For 循环变量=初值 to 终值 [Step 步长] 语句块 [Exit For] 语句块 Next 循环变量 >0 初值<终值 步长 省略 <0 初值>终值 =0 死循环 =1 时,可
循环变量得初值
循环变量在终值内
2.3 程序的选择结构

6
体验2
用上面不同的语句改编“体验1”中程序试试
7
关系表达式
运算符 含义 = 等于 > 大于 >= 大于等于 < 小于 <= 小于等于 <> 不等于
像x>0就是一个关系表达式,当成立时其值为真(True),不成立时则为假 (False),其数据类型为“逻辑型(Boolean)。
数值型数据比较,按大小比较,如:3>2 其值为True,3<2 其值为False 其他类型比较,按其序号比较,如:”a”>”b” 其值为False, “a”<“b” 其值 为Ture。
8
逻辑表达式
Not(非) And(与) Or(或)
数学表示 0<x<10 x<0 或 x>10 x不大于10 VB表示 x>0 And x<10 x<0 Or x>10 Not x>10 意义 两个都成立,为True 有一个成立,为True 取相反
运算顺序 a + b>c + d a>0 And b<0 3>0 And 5>4 Or Not 1<0 先算术运算,再关系运算 先关系运算,再逻辑运算 运算顺序,Not → And → Or
9
练习
输入学生成绩,判断是属于那个等级,用vb编程实现。 a为成绩 a<60,差 60<=a<=75,中 75<a<=85,良 a>85,优
10
1、在VB中如何表述下列逻辑表达式 x大于等于3 x不等于3 a+b大于b+c 2、写出下列逻辑运算的结果(既为 Ture 或为 False ) 1)3>5 2)x>y (x=5,y=3) 3) a>0 and b>0 (a=4,b=0) 4)a>0 or b>0 (a=5,b=-5)
程序的基本结构(顺序+选择)课件

• 由键盘输入两个数a、b,输出其中较大的数。
14
用流程图描述算法
开始 输入a、b值
a>b
Y 输出a
结束
N 输出b值
15
2.3.2 选择结构
2、双分支选择结构 形式1为:
If 条件表达式 Then 语句1 形式2为:
If 条件表达式 Then 语句或语句组1
Else 语句或语句组2
End If
Else 语句2
16
练习
• 某市的士费起步价8元,可以行驶3公 里。3公里以后,按每公里1.6元计算 ,输入的士的公里数,请你计算顾客 需付费多少元?
17
练习
• 求一元二次方程 ax2+bx+c=0 (其中 a≠0 )的实数解。要求a、b、c由用 户输入,若方程有实数解,则输出x1 和x2,若方程无实数解,则输出无实 数解。
结束 5
2.3 程序的基本结构
• 顺序结构 • 在程序执行过程中,语句按先后顺序一
行一行执行,没有分支,没有重复,直到 程序结束。
6
2.3.1 顺序结构
顺序结构的特点:
1. 执行过程是按顺序从第一条语句执行到最 后一条语句。
2. 在程序运行的过程中,顺序结构程序中的 任何一条语句都要运行一次,而且也只能 运行一次。
7
程序的基本结构
• 任何正规的程序都可分解为三种基本结构, 即顺序结构、选择结构和循环结构。
8
2.3.2 选择结构
在处理实际问题时,只有顺序结构是不够的 ,经常会遇到一些条件的判断,流程根据 条件是否成立有不同的流向。
9
• 如何只抽取偶数的幸运号数?
10
用流程图描述算法
2.3程序的选择结构

编写一程序,对某次测验分数进行分类,输入一分数, 给出该分数的等级。要求如下:59分以下为D,60-69 为C,70-89为B,90-100为A+。 1、分析问题
设学生成绩为x,则需要判断x的取值范围,然后输出相应等级。
2、设计算法 (1)输入成绩x (2)判断x,如果x<59,则输出D,如果60<=x<70则 输出C,如果70<=x<90则输出B,如果90=<x<=100 则输出A。 (3)结束
3、逻辑表达式
逻辑运算符:Not、And、Or 逻辑表达式的运算值为逻辑型。
4、运算顺序
Not>And>Or 算术运算>关系运算>逻辑运算
例:a+b>c+d And a>=5 Not c>0 Or d<0
2.3 程序的选择结构
练习
P49练习(2)编写一个程序,输入三个数,输出其中的 最大数。
22..33 程程序 序的 的选 选择 择结 结构 构
2.3 程序的选择结构 多重选择语句
基本格式:
Select Case 表达式
表达式和表达式列表可
Case 表达式列表1 以是数值型或字符型。
语句组1
表达式列表又称值域, 可表示为:
Case 表达式列表2 1.表达式1,表达式
……
2,……
Case Else
2.表达式1 To 表达式2
语句组N+1 3.Is关系表达式
End Select
2.3 程序的选择结构
练习
P49练习(3)我们把字符作如下分类:大写字母A…Z; 小写字母 a…z;数字:0…9;其它字符。编写一个程 序,根据上述分类的方法,输入一个字符,报告该字 符所属的类型。
2.3程序的基本结构

程序的基本结构一、教材分析“程序的基本结构”是信息技术选修模块《算法与程序设计》第二章程序设计ABC第3节的内容,也是本章的重点内容。
课时安排: 2课时。
本节课为第1课时,主要介绍顺序结构和选择结构的If语句及If 语句的嵌套方法。
本节内容是在学习了自然语言、算法描述、流程图、基本语句和基本函数的基础上学习的。
二、教学目标1、知识目标掌握顺序、选择、循环三种基本结构。
2、能力目标通过例题教学,培养学生能够使用三种基本结构编写简单的程序解决具体问题。
3、情感目标通过本节的学习,体会用结构化方法解决总分数学问题的便捷性,明确三种控制结构的重要作用。
三、教学重点·难点重点: If语句及If语句的嵌套方法,三种结构的实现语句的格式和功能。
难点:使用三种基本结构编写简单的程序,以及同种结构的不同实现语句之间的差异。
四、教学方法教学活动是教与学的双边活动,必须充分发挥教师主导作用和学生主体地位。
根据这一教学原则和学情分析,主要用如下方法进行教学即“点拨、分析、猜想、归纳、概括”等探索式教学方法。
五、教学过程(一)创设问题情境,引导学生思考,引入课堂。
1、问题1:前面我们学习了哪些基本语句?①赋值语句②输出语句 print ③注释语句④结束语句2、问题2:学习了哪些基本的函数?①与用户交互函数InputBox()、MsgBox() ②数学函数③字符串函数④日期函数3、通过第一章的学习我们对VB编程有了初步的体验,知道了计算机解决问题的过程和三种描述算法的方法。
接下来我们应如何利用这些基本的语句及函数来实现算法和进行编程呢?由此引入课题,并板书。
课题:程序的基本结构(二)展示目标:知识目标,能力目标,情感目标。
(三)导学达标(基础知识)1、程序的基本结构:①顺序结构②选择结构③循环结构(师)我们可以用N—S流程图来进行简单描述:顺序结构:(师)提出问题:这三种结构分别都有哪些特点?(由学生回答,老师进行总结) 顺序结构:按照由上到下的顺序一行一行地执行。
2.3.2选择结构 (2)

在VB中,选择结构可用if语句来实现, if语句有如下三种:
(1)单分支选择结构(如右图): If 条件 Then 语句或语句组 End If
注意:条件可以是关系表达 式,也可以是逻辑表达式
实践1 : 输入两个数a和b,比较他们的大小,如果a大于b,我们就
进行交换并输出他们的值。那我们该如何完善这段程序呢?
程序,输入3个数值,单击“判断”按钮,即可得出最大数,该程序的正 确运行界面如图所示,但他在编写程序时遇到了一些问题,请你帮他完 善程序,让其程序运行正常。程序代码如下:(工作界面如右)
Private Sub Command1_Click() Dim a, b, c, max As Integer a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) If ______ Then
MsgBox "成绩为B!", vbOKOnly, "结果" ElseIf _________ Then
MsgBox "成绩为C!", vbOKOnly, "结果" Else
MsgBox "成绩为D!", vbOKOnly, "结果" End If End Sub
小结:
(1)单分支选择结构: If 条件 Then 语句或语句组 End If
2.3.2程序的基本结构 ——选择结构
安庆一中 吴萍
上课之前,我们先来玩“猜数小游戏”吧,大家一 起来体验一下!工作界面如下:
游戏源代码:
Dim N As Long Dim M As Long Private Sub Form_Load()
《程序的选择结构》教学设计

《程序的选择结构》教学设计一、教学概况二、教材、教学对象分析本节课选择信息技术(选修1)《算法与程序设计》2.3节《程序的选择结构》中的“2.3.1从制作矩形框问题开始- 2.3.2条件语句”,内容主要涉及VB程序的选择结构。
从知识结构上看,本节课的内容和上节课的顺序结构以及后面的循环结构是程序的三大基本结构,是后续程序设计学习的知识基础。
课前对教学对象进行了问询和调查,得知:石门中学相当部分学生在初中时期对程序设计有所接触,但学习不多;高一时段学习《信息技术基础》(必修)时对本选修课程已有所启承;学生已经很好地掌握了程序的顺序结构。
三、教学思路由于选择结构与顺序结构、循环结构同属程序设计的三大基本结构;此外编写程序应该是用于解决生活中的问题。
所以在教学设计中一要体现承上启下,二要体现来自于生活、而又回到生活。
所以我的教学思路如下:先回顾一个顺序结构的程序,让学生说出程序执行结果,再调换两条语句的先后顺序再次研究执行结果。
通过呈现执行过程,既回顾上节课内容,也能提高学生阅读程序的能力,和提高编程的严谨性。
用生活中的一些例子和一条英文语句导入新课,说明选择结构的格式以及关键字。
接着以“苹果促销程序”实例作范,讲授带有选择结构的程序设计过程;创设情境“大角湾旅游区门票收费难”,让学生帮助设计“大角湾门票收费程序”;最后细化大角湾门票收费细则,引出多重选择,作为学生的探究任务。
最后小结时,在回顾本节课内容同时引出生活中的重复工作,应该要使用循环结构,作为下节课的展望。
四、教学目标(一)知识与技能1、熟练掌握VB语言选择结构的语句格式、功能和执行过程;2、掌握VB语言的关系表达式、逻辑表达式等程序设计语言的基本知识;3、初步理解多重选择,知道VB语言的多重IF选择语句的格式、功能和执行过程。
(二)方法与过程经历用计算机解决问题的过程:分析问题、设计算法、编写程序、调试程序和检测结果。
(三)情感与价值观学会使用VB语言的选择结构来实现选择控制结构,解决生活中的实际问题。
2.3程序的选择结构.doc

2.3程序的选择结构一、教学背景分析“程序选择结构”是粤教版信息技术普通高中课程实验教科书选修1《算法与程序设计》第二章第三节的内容。
主要内容是用选择结构编写简单的程序解决具体问题,在理解了顺序结构的前提下使得学生掌握VB语言的条件语句、多重选择语句的格式、功能和执行过程,学会使用条件语句和多重选择语句实现选择控制结构,解决简单的实际问题,并初步掌握调试、运行程序的方法。
这一节可用2个课时来完成,该教学设计是第一课时。
二、学生背景分析高二的学生对事物的分析、综合能力及独立思考能力、分析解决问题的能力都达到了一定的水平,在教师的有效引导下,有能力进行自我探究。
而且高二的学生已经在数学课上学习了一些算法的知识也已经接触过一些程序案例,但是经过半年的时间,繁重学业的学生已经对本来在数学上都要求不高的算法知识已经遗忘了不少。
而且对于学生来说,在数学课中接触的主要是纯数学问题。
这些案例比较抽象,与生活实际相距较远,不够具体生动,学生大多是以一种被动接受的态度进行学习。
如果能用一种学生比较感兴趣的,贴近学生日常生活的例子来分析选择结构的话,那么学生会比较感兴趣,使得学生由“要我学”转变为“我要学”,使得数学书本中学习的知识很好的帮助信息课《算法与程序设计》的学习。
三、教学目标1、知识与能力(1)掌握选择结构的If条件语句的格式、功能和执行过程。
(2)关系表达式与逻辑表达式的理解与运用。
(3)学会使用条件语句来实现选择控制结构,解决实际问题。
(4)进一步掌握VB程序调试运行的方法。
2、过程与方法在老师的指导下,与同学共同探究问题,让学生体验自主学习、协助学习的乐趣。
3、情感态度与价值观(1)培养学生的逻辑思维能力,促进学生对计算机解决问题方法的理解。
(2)在自主探究解决问题的过程中,让学生体验学习的乐趣。
四、教学重、难点重点:(1)理解并掌握选择结构的格式、执行过程及其功能。
(2)理解多重选择结构语句在解决多重选择问题上的直观、优越性。
选择结构单分支结构(教学设计)

2.3.2程序的选择结构——教学设计一、教材分析本节课的教学内容是教育科学出社版、普通高中课程标准实验教材选修模块《算法与程序设计》中的第2章第3节《程序的选择结构》,是在上两课时(2.1—2.2)学习VB的基本数据类型、常量、变量、函数、表达式等程序设计语言和程序顺序结构的基础上,学习程序的选择结构,其中包含“选择结构的格式、功能、执行过程”。
在解决实际问题的过程中,常常需要对事物进行判断和选择。
如何在程序设计中能够实现判断和选择,选择结构是重要的选择方式之一。
在讲解这一知识点时,采用英语“If you feel happy then you will smile else you will sad.”提炼选择结构并编写程序,引导学生经历分析问题、设计算法、编写程序、调试程序等用计算机解决问题的全过程。
通过分析程序,归纳总结出VB语言的选择结构的格式、功能、执行过程,让学生体验自主学习、协助学习的乐趣,体验成功的快乐。
二、学情分析在第一章的学习中,学生已经经历了利用计算机解决问题的基本过程,领略了用计算机解题的奇妙之道,在第二章中学习VB的基本数据类型、常量、变量、函数、表达式等程序设计语言和程序顺序结构的基础上,感悟了程序设计是其中的关键环节,对程序设计已经产生了一定兴趣。
三、教学目标:1、通过英语“If you feel happy then you will smile.”提炼选出择结构的单分支结构,通过英语“If you feel happy then you will smile else you will sad.”提炼出选择结构的双分支结构,讲解单分支结构和双分支结构及其功能和执行过程。
师生共同分析“密码登陆框”问题,分别用单分支和双分支结构解决密码输入正确和不正确时的处理方法。
归纳总结VB语言的选择结构的格式、功能、执行过程,掌握条件选择语句的使用方法,能够编写简单的选择结构的程序;掌握VB语言的关系表达式、逻辑表达式等程序设计语言的基本知识。
2.3_程序的选择结构

2.3 程序的选择结构
靖远一中信息组:冯璇
2.3.1从求一个数的绝对值开始
问题:求一个数a的绝对值
(1)分析问题。
求一个数A的绝对值,如果A>=0,则这个数的绝对值为A,否则为-A。
(2)设计算法。
⑴输入数A ⑵如果A>=0,则这个数的绝对值为A ⑶否则为-A
⑷输出结果
⑸结束
(3)编写程序
变量 = 对象.属性
x <= 0 Or x > 100
对象名.属性名 = 属性值
x Mod 2
End If
练习:
1.输入三角形的三条边长,首先判断给出的三条边能 否构成三角形(三角形的两边之和大于第三边),如 可以,则计算并输出该三角形的面积;否则输出"不 能构成三角形"。
Private Sub Command1_Click() Dim a, b, c, p, s As Single a = Val(Text1.Text) b = Val(Text2.Text) c = Val(Text3.Text) p = (a + b + c) / 2 If (a + b) <= c Or (a + c) <= b Or (b + c) <= a Then Print "不能构成三角形" Else s = Sqr(p * (p - a) * (p - b) * (p - c)) Print "三角形的面积是" & s End If End Sub
2.3选择结构教案

2.3程序的选择结构——IF条件语句执教教师:信息组 ** 教学年级:高一年级课时:一课时时间:2014年4月9日【教材分析】顺序结构、选择结构、循环结构是算法和程序的三种基本结构,所有算法都可以用这三块“积木”通过组合和嵌套的方式表达出来。
本节课的教学内容是广东版高中课程标准实验教材选修模块一《算法与程序设计》中的第2章第3节《程序的选择结构》第1课时。
前面2.2节已经学习了程序的顺序结构,顺序结构是最为简单基础的算法结构,其特点是从上到下顺序执行,本节开始学习的选择结构需要进行条件判断,根据条件的成立与否,算法结构中出现了分支。
选择结构一方面在顺序结构的基础上让算法增加了可控性,另一方面也为循环结构打下了基础。
“ IF条件语句”是选择结构程序中最常用、最基础的语句之一,正确描述选择结构的算法是应用IF条件语句的前提,识别和理解IF语句的基本执行过程是学习的关键。
教材中的接受性学习思路是以数学问题引入选择结构,提出IF 条件语句,再阐述其执行过程,实践练习。
这仍然是一种偏向接受性学习的思路,不利于学生主动产生学习需求,也不利于知识的拓展和迁移。
【学情分析】本期的选修模块《算法与程序设计》,相比较必修模块的信息技术通晓性知识,学习难度明显加大,学生存在一定的畏难情绪。
经过前面章节的学习与实践,对使用顺序结构解决问题有初步的认识,对赋值语句、输入函数、输出语句有所掌握,但因上机实践机会较少,还有待熟练,顺序结构和选择结构都不是孤立存在的,因此前述语句都是正确应用IF条件语句的基础。
对于生活中常见的简单选择性问题(双分支),学生能用自然语言作大致描述,但用流程图形式作描述时存在条件提炼不准确,进而导致流程混乱的情况。
当选择性问题变得复杂(嵌套或多分支),对条件的提炼和算法流程的表达上对学生提出了更高的要求,清晰地描述算法才是正确应用语句编写程序的前提。
【设计思想】基于以上分析,结合到“问题分析——算法设计——程序实现”这一编程解决问题的一般过程,本节课以“看视频,画算法流程图,归纳条件选择问题的基本执行过程”为核心问题展开教学。
2.3 程序的基本结构

①顺序结构:按照由上到下的顺序一行一行地执行。 程序中没有分支,没有重复。 ②选择结构:根据不同的条件判断来决定程序执行走 向的结构。程序中有分支,没有重复。 ③循环结构:根据条件判断,需要重复执行某一段代 码的程序。程序中可能存在分支和重复。
1、顺序结构
Private Sub command1_Click() Dim a As Single Dim b As Single Dim c As Single a = text1.text b = text2.text c=a a=b b=c text1.text=a text2.text=b End Sub
思考: 1.若有如下一段代码: For j=15 to 3 Step –2 Print j 1 Next j 则循环结束时,循环变量j的值是多少?
2.循环变量的增量能否为0,如果为0,运行结果 怎样? 无休止地做循环,
也叫死循环
例: n=10 For i=1 to n print “*”; Next i
内
F
T
语句块
Exit For
语句块 循环变量加步长
图 1-3-13
For 循环语句
编程:输入一整数n,计算s=1+2+3…+n
Dim n as integer,s as long
N=val(text1.text) S=0 For i=1 to n s=s+i
Next i
Print “1+2+…+” & str(n) & ”=” ; S
程序代码
Private Sub command1_Click() Private Sub command1_Click() Dim a As Integer Dim a As Integer Randomize Randomize a = Int(Rnd() * 12) + 1 a = Int(Rnd() Select Case a* 12) + 1 if a<=3 then Case 1 To 3 Label1.Caption = Str(a) & "月份是春季 "" Label1.Caption = Str(a) & "月份是 " & "春季 Case To 6 then elseif4 a<=6 Label1.Caption = Str(a) & "月份是夏季 " Label1.Caption = Str(a) & “月份是” &“ 夏季” Case 7 To 9 then Label1.Caption = Str(a) & "月份是" & "秋季" elseif a<=9 Label1.Caption = Str(a) & "月份是秋季" else Label1.Caption = Str(a) & "月份是" & "冬季" Case Else endif Label1.Caption = Str(a) & "月份是冬季" end Sub End Select end Sub
2.3节程序选择结构

程序的三种基本结构
顺序结构 选择结构 循环结构
请你来翻译
如果X和6000相等,则输出猜中了;
If x = 6000 Then Print "猜中了"
如果X小于6000,则输出数低了;
If x < a Then Print "数低了"
如果X大于a,则输出数高了;
单分支条件语句格式(块)
块 If 语 句
If 条件表达式 Then 语句块 End If
告诉这个语句结束了, 所以是必须的!!!
例:求一元二次方程ax^2+bx+c=0 的根,其中d=b*b-4*a*c If d>= 0 then
Print "x1=";(-b+Sqr(d))/(2*a) Print "x2=";(-b-Sqr(d))/(2*a)
End If
在解决问题的过程中,常常需要对事物进行判 断和选择,因此就要用到条件语句。
例:求一个数的绝对值 算法: 1. 输入一个数x 2. 如果x≥0,则输出x 否则,输出-x 3. 结束
If……then……else…… 如果……则……否则……
例:求一个数的绝对值
Private Sub Command1_Click() Dim x As Single x = InputBox("请输入一个数") If x >= 0 Then Print x Else Print -x End Sub If x >= 0 Then print x Else print -x End If
例:求一元二次方程ax^2+bx+c=0 的根,其中d=b*b-4*a*c
2_3_21程序的多重选择结构

一、复习回顾
实例:输入一个分数,如果大于等于60分, 则输出“顺利通过”。否则,输出“不及 格”。
①IF 条件 THEN 语句1 ELSE 语句2 ②IF 条件 THEN 语句组1
ELSE
te Sub Command1_Click() Dim score As Integer _____ score = InputBox("请输入一个分数:") If score >= 60 Then ___________________ Print “顺利通过!” Else _______ Print “不及格!” endif _______ End Sub
End Sub
实例改写:输入一个分数x,当x>=90分时输出 “优秀”;当80=<x<90时输出“良好”;当70 =<x<80时输出“中等”;当60=<x<70时输 出“及格”;当x<60时输出“不及格”。 用Select Case 语句编写程序。
程序实现
Private Sub Command1_Click() Dim x As Single ____ InputBox 输入学生的分数:")) x = Val( ________(" x Select Case ___ Is >= 90 Case ___ Print "优秀" Is >= 80 Case ___ Print "良好" Is >= 70 Case ___ Print "中等" Is >= 60 Case ___ Print "及格“ Case Else ___________ Print "不及格“ End Select ____________ End Sub
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序的选择结构一、教学目标1、知识与技能理解程序选择结构中的条件选择语句的执行流程,掌握条件选择语句和多种选择语句的使用方法,能够编写简单的选择结构的程序,以解决生活中的一些计算问题。
2、方法与过程本节从简单的问题入手,通过一道求一个数的绝对值的题目,让学生明白条件选取择语句的执行流程及使用方法。
通过一道输入学生分数,判断该分数是属于哪种等级的题目,让学生初步接触多种选择语句的使用。
进而再做类似的练习,加强学生的理解,课程安排形成循序渐进的梯度,充分挖掘学生潜力。
3、情感态度和价值观程序设计选取的题目都是生活中遇到的例子,加强学生利用本学科解决日学生活中的问题的意识。
二、重点难点1、教学重点(1)条件选择语句和多重选择语句的使用(2)程序条件选择结构的执行流程(3)会使用条件语句和多重选择语句编写程序解决简单的应用题2、教学难点根据题目写出正确的程序三、教学环境1、教材处理教材选自《广东省普通高中信息技术选修一:算法与程序设计》第二章第三节,原教材的第一个程序例子有关矩形的计算,涉及到解二元一次方程,使用的表达式也较为复杂,授课过程中可能花的时间太多。
所以上课时,把教材的导入例子作了的简单的处理,以求一个数的绝对值作为导入,学生更易理解条件语句的执行。
至于多种选择语句,教材选用一道求恩格尔系数,从而判断生活水平的高低的题目,授新课前,就简单说明一下,再用另一道根据学生分数判断该成绩是属于哪一个等级的题目作为实践,从而与学生的学习更有联系,提高学习兴趣。
2、预备知识学生已掌握算法的概念及描述方法,定义常量与变量的方法,程序设计的四个步骤——分析问题、建立模型、设计算法和编写程序。
3、硬件要求建议本节课在多媒体电脑教室中完成,有广播教学系统或投影仪。
4、所需软件学生机要安装VB6.0或以上版本。
5、所需课时2课时(100分钟)四、教学过程导入:演示求一个数的绝对值这道题的程序,让学生明白通过程序可以解决数学中的问题,也给学生展示完整的程序代码,这道程序的功能就是靠这些代码来控制的,引起学生的注意,激发他们的求知欲。
一、演示上述的程序,并把程序代码中的各行代码的作用解释一遍,顺便把程序的执行流程说明一下,编写的程序与设计的算法是一致的。
程序2-3Private sub command1_click() ‘定义名为command1_click()的事件过程Dim A as single ‘定义求绝对值的数A为单精度实型 A=inputbox(“r=”,”请输入半径”) ‘输入A的值If A>=0 then ‘如果A>=0Print “Y=”;A ‘输出A的值ElsePrint “Y=”;-A ‘输出-A的值End ifEnd sub ‘过程结束二、条件语句在解决问题的过程中,常常需要对事物进行判断和选择,如上题中,求一个数A的绝对值,如果A>=0,则这个数的绝对值为A,否则为-A。
在程序设计中,如何实现判断和选择呢?在上述代码中,有一个用if开头的语句,这就是条件语句。
(一)条件语句的基本格式是:if 条件 then 语句组1 else 语句组2或if 条件 then语句组1else语句组2end if其中,条件是一个逻辑表达式,语句组是一组VB的语句。
(二)条件执行语句的执行过程条件语句的执行过程是:当条件成立时,执行then后面的语句组1,否则执行语句组2,条件语句的执行流程图如下图所示。
在条件语句的基本格式中有时可以省略else和语句组2,这时条件语句的执行过程是当条件成立时,执行then后面的语句组1,否则退出条件语句,执行下面的语句。
(三)关系表达式在程序2-3中,程序的第三行是一个条件语句,其中的条件A>=0表达式,一般称为关系表达式,关系表达式是用关系运算符连接起来的式子。
关系运算符号有:当关系表式成立时其值为真(Ture),当表达式不成立时其值则为假(Fals e);关系表达式的值既不是数值型量,也不是字符型量,而是一种新的数量类型——逻辑型。
逻辑型只有两个可能的值:假(False)和真(Ture)。
关系表达式的值定义如下:(1)对数值型的数据比较,是按照数值的大小来进行比较。
如13>6的值为真。
(2)对其它类型数据的比较,则按照其序号进行比较。
如"D">"B"其值为假。
2<X<(四)逻辑表达式在实际问题中,对于一些复杂的条件,还需要几个关系表达式组合起来才能表示。
例如,条件2<X<9就需要用2<X和X<9这两个表达式来表示.将多个关系表达式用逻辑运算符连接起来的式子称为逻辑表达式,逻辑表达式的运算值为逻辑型。
逻辑运算符有:Not(非)取操作数相反的值。
即当操作数为假时,结果为真;当操作数为真时,结果为假。
And(与)当两个操作数都为真时,结果才为真。
Or(或)当两个操作数都为假时,结果才为假。
(五)逻辑运算的顺序(1)当条件中只有逻辑运算符时,运算的顺序为Not、And、Or(2)当条件中既有算术运算符,又有关系运算符和逻辑运算符时,运算顺序是:算术运算符,关系运算符,逻辑运算符例如:a+b>c+d and a>=5 or not c>0 or d<0当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)编写程序Private sub command1_click()Dim x as singlex=Inputbox(“请输入购买苹果的重量”)if x>=2 theny=1.5*x*0.8elsey=1.5*xend ifPrint “应付款”;y;“元”(4)调式程序五、多重选择语句问题2:输入一个成绩,如果90分以上,则输出“优秀”;80-89,则输出“良好”;70-79,则输出“中等”;60-69,则输出“及格”;60分以下则输出“不及格”,请编写程序。
如果这道题使用if语句来编写程序的话,程序如下:程序2-4Private sub command_click()X=inputbox(“请输入一个分数”)If X>=90 then print”优秀”If X>=80 and X<89 then print”良好”If X>=70 and X<79 then print”中等”If X>=60 and X<69 then print”及格”If X <60 then print”不及格”End sub在程序2-4中,使用了5个if语句来处理5种情况。
这样的程序在可读性和效率方面都是比较差的,如果再多一些情况,它的缺陷就会暴露得更加明显,如何处理这个问题呢?(一)多重选择语句格式在VB语言中,设置了一个处理多种情况的语句,称为多重选择语句,它的基本格式为:select case 表达式case 表达式列表1语句组1case 表达式列表2……case else语句组N+1end select其中(1)表达式和表达式列表可以是数值型或字符型,表达式列表还可以是多个用逗号分开的表达式。
(2)表达式列表与表达式的类型必须相同。
(3)表达式列表又称值域,它有如下三种形式:①表达式1,表达式2,……②表达式1 to表达式2③ Is关系表达式(二)多重选择语句的执行过程多重选择语句的执行过程是:当表达式的值为表达式列表1时,执行语句组1;当表达式的值为表达式列表2时,执行语句组2;……当表达式的值为表达式列表N时,执行语句组N;当表达式的值不是上述值时,执行语句组N+1;有了多重选择语句,对于多种情况的选择问题,就可以利用它来解决。
运用多重选择语句编写问题2的程序如下:Private sub command_click()X=inputbox(“请输入学生成绩”)Select case XCase Is>=90Print”优秀”Case 80 to 89Print”良好”Case 70 to 79Print”中等”Case 60 to 69Print”及格”Case elsePrint”不及格”End selectEnd sub(三)练习问题3:我们把字符作如下的分类:大写字母:A…Z;小写字母:a…z;数字:0…9;其它字符。
编写程序,根据上述分类的方法,输入一个字符,报告该字符所属的类型。
六、小结与顺序结构相比较,选择结构就是程序的执行不再完全按照语句的顺序执行,而是根据某种条件是否成立来决定程序执行的走向,它进一步体现了计算机的智能特点。
在VB语言中,选择结构通过if语句和select case语句这两个条件语句来实现,运用条件语句的关键是条件的表示,如果能够正确地表达条件,就可以简化程序,在多重选择的情况下,使用select case语句,可以使程序更直观,更准确地描述出分支的走向。
五、课外拓展问题4:编一个程序,输入三个数,输出其中的最大数。
问题5:自已上网查资料,搜集有关气象风级表的资料,比如说0级是属于无风,12级是属于飓风等,试编写程序,输入一个风级,输出相应的概况,名称,速度等。