当前位置:文档之家› VB第4章 选择结构

VB第4章 选择结构

VB第4章 选择结构
VB第4章 选择结构

教案

讲稿

第四章选择结构程序设计

[旧课复习]:

复习内容:

1.已学过的几个常用的控件

2.控件中输入输出语句的使用

复习目的:让学生掌握基本控件的使用

复习时长:大约10分钟

[新课导入]:

导入方式:以日常生活中的实例让学生理解什么是选择结构

导入目的:增强学生的理解能力

导入时长:大约5分钟

[新课讲授]:

重点:各种分支结构语句的使用

难点:选择结构的嵌套

方法:运用多媒体辅助教学,采用讲授法和案例教学法

4.1算法介绍

4.1.1算法介绍

一、算法概述

所谓算法,是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每个指令表示一个或多个操作。

算法有以下特征:

(1)有穷性

(2)确定性

(3)可行性

(4)输入

(5)输出

4.1.2算法的表示

常用的表示算法的方法有:自然语言、伪代码、流程图,本章重点介绍用流程图表示算法。

流程图用一些图框、流程线以及文字说明来表示算法。用图来表示算法,直观、形象、容易理解。

包括:传统流程图、结构化流程图。

因传统流程图中流程线的使用无限制可能导致流程图毫无规律。结构化流程图使用3中基本结构,即:顺序结构、选择结构和循环结构(如图4-1所示),从而大大提高流程图的规律性。

图4-1(a)顺序结构流程图图4-1(b)选择结构流程图

图4-1(c)循环结构流程图

4.2条件语句

VB中选择结构通过条件语句来完成,包括:单分支、双分支和多分支等。

4.2.1单分支结构语句

单分支结构语句包括单行结构和块结构。

1.“单行结构”格式为:

If <条件表达式> Then <语句序列>

2. “块结构”格式为:

If <条件表达式> Then

<语句序列>

说明:

(1)“条件表达式”可以是关系表达式、布尔表达式或者数值表达式。如果是数值表达式,则非0值为真,0为假。

(2)当条件表达式的值为真时执行语句序列。

【例4-1】已知两个数x和y,比较它们的大小,使得x>y。

分析:对任意的两个数x、y,其中x若为大的数,直接输出即可,若 y为大

的数,则交换两数即可。

其语句描述如下:

用单行语句实现:

If x

用块语句实现:

If x

t=x

x=y

y=t

4.2.2双分支结构语句

双分支结构语句也包括单行结构和块结构。

1.“单行结构”格式为:

If <条件表达式> Then<语句序列1>[ Else<语句序列2>]

2. “块结构”格式为:

If <条件表达式> Then

<语句序列1>

[Else

<语句序列2>]

End If

说明:

(1)“条件表达式”可以是关系表达式、布尔表达式或者数值表达式。如果

是数值表达式,则非0值为真,0为假。

(2)当条件表达式的值为真时执行语句列1, 否则执行语句列2。

【例4-2】输入一个整数x ,判断该数的奇偶性。

分析:该数能被2整除时是偶数,否则是奇数。能被2整除要作为判断的条件,当能被2整除时输出偶数,否则输出奇数。

设计步骤如下。

(1)建立应用程序用户界面,如图4-2所示。

(2)编写代码。

编写命令按钮Command1的Click 事件代码:

Private Sub Command1_Click()

Dim x As Integer, y As String

x = Val(Text1.Text)

If x Mod 2 = 0 Then y = x & "是偶数" Else y = x & "是奇数" Label2.Caption = y

End Sub

【例4-3】从键盘输入年份,判断是否是闰年,将结果输出。

分析:闰年的条件如下。

(1) 能被4整除,但不能被100整除年份是闰年。

(2)能被100整除,又能被400整除的年份是闰年。

设计步骤如下。

(1)建立应用程序用户界面,如图4-3所示。

图4-2 判断数据奇偶性

图4-3 判断闰年的运行界面

(2)编写代码。

编写窗体的Click事件代码:

Private Sub Form_Click()

y = Val(InputBox(“输入年份”, “判断闰年”))

If(y Mod 4 = 0 And y Mod 100<> 0) or (y Mod 100 = 0 And y Mod 400=0)then MsgBox “是闰年”

Else

MsgBox “不是闰年”

End If

End Sub

4.2.3 使用IIF函数

IIF函数可以实现一些比较简单的选择结构。

IIF函数的语法格式为:

IIF(<条件表达式>,<真部分>,<假部分>)

说明:

(1)“条件表达式”可以是关系表达式、布尔表达式、数值表达式。

(2)当条件表达式为真时,函数返回的值是真部分;当条件表达式为假时,函数返回的值是假部分。

4.2.4 多分支结构语句

如果遇到多个分支结构,其流程图如图4-4所示,可采用的语句有两种:

If…Then…ElseIf语句和Select Case语句。

图4-4 多分支结构

1. If…Then…ElseIf语句

其语法格式为:

If <条件1>Then

[语句列1]

ElseIf <条件2>Then

[语句列2]

[Else

[其他语句列]]

End If

说明:

(1)在块If中,Else和ElseIf语句都是可选的,可以有任意多个ElseIf

子句,但是这些ElseIf子句都必须出现在Else子句之前。

(2)程序运行时,先测试条件1,如果条件为真,则执行Then之后的语句;

如果条件1为假,则依次测试ElseIf子句;如果某个ElseIf子句的条件为

真,则执行该ElseIf子句对应的语句列,执行完成后从End If语句退出;

如果没有一个ElseIf子句的条件为真,则执行Else部分的其他语句列。

【例4-4】已知百分制成绩mark,要求显示相应的五级制。(90~100分为优

秀,80~89分为良好,70~79分为中等,60~69分为及格,60分以下为不

及格)

分析:各个等级是并列关系,并且输入一个成绩只能输出一个相应的等级,

可采用嵌套结构的If语句。程序流程图如图4-14所示。

(1)建立应用程序用户界面,如图4-5所示。

(2)编写代码。

图4-5 输出等级

编写命令按钮Command1的Click事件代码:

Private Sub Command1_Click()

Dim mark As single

mark = Val(Text1.Text)

If mark > 100 Then MsgBox "请重新输入一个小于等于100的数":END

If mark >= 90 And mark <= 100 Then

k = "优秀"

ElseIf mark >= 80 Then

k = "良好"

ElseIf mark >= 70 Then

k = "中等"

ElseIf mark >= 60 Then

k = "及格"

Else

k = "不及格"

End If

Label2.Caption = "成绩是" & mark & "," & "等级是" & k End Sub

2.Select Case语句

语法格式为:

Select Case<测试条件>

[Case<表达式列表1>

[<语句列1>]]

[Case<表达式列表2>

[<语句列2>]]

[Case Else

[<其他语句列>]]

End Select

说明:

(1)“测试条件”为必要参数,可以是数值表达式、字符串表达式或布尔表达式。

(2)在Case子句中,表达式列表为必要参数,用来测试其中是否有值与测试条件相匹配。表达式可以有以下几种形式。

?一个常量或常量表达式。例如:Case 5。

?多个常量或常量表达式,各个表达式用逗号隔开,逗号相当于“或”,只要测试条件等于其中某一个常量的值就是匹配。例如:Case 1, 2, 3。

?表达式1 to 表达式2,表示从表达式1到表达式2中所有的值,但是表达式1的值必须小于表达式2的值。例如:Case 1 to 5。

? Is关系运算表达式,可以使用的关系运算符有:>、>=、<、<=、<>、=。例如:Case Is < 5。但是不可以使用逻辑运算符表示范围,Case Is > 5 and Is <10是错误的。

?表达式列表可以是以上4种情况的组合。例如:Case 1, 5, 6 To 9, Is < 20。

(3)程序执行时,先求测试条件的值,然后依次判断与哪一个Case子句的值相匹配。如果匹配则执行该Case子句后的语句列,执行完成后从End Select 退出;如果没有Case子句与测试条件匹配,则执行Case Else语句。注意,如果有多个Case子句与测试条件匹配,则只执行第一个与之匹配的语句。(4)如果没有Case子句与测试条件匹配,而且也没有Case Else语句,则程序执行End Select之后的语句。

【例4-5】某百货公司为了促销,采用购物打折扣的优惠办法:每位顾客一次购物

(1) 在1000元以上者,按九五折优惠;

(2) 在2000元以上者,按九折优惠;

(3) 在3000元以上者,按八五折优惠;

(4) 在5000元以上者,按八折优惠。

设计步骤如下:

(1) 建立应用程序用户界面与设置对象属性。

(2) 编写程序代码。

Private Sub Command1_Click()

Dim x As Single, y As Single

x = Val(Text1.Text)

Case Is < 2000

y = 0.95 * x

Case Is < 3000

y = 0.9 * x

Case Is < 5000

y = 0.85 * x

Case Else

y = 0.8 * x

End Select

Text2.Text = y

End Sub

4.3选择结构的嵌套

如果在块If语句中,语句列1或者语句列2又包含If语句,则称为If 语句的嵌套。常见的格式为:

If<条件1>Then

[语句列1]

[Else

If<条件2>Then

[语句列2]

[Else

[语句列3]]]

End If

End If

说明:

(1)Else语句为可选语句。

(2)每一个块If结构都要有一个End If和它配对。

【例4-6】编写程序,用文本框检查用户输入的口令。检查结果用对话框显示。分析:在窗体上添加一个文本框控件,将其PasswordChar属性值设置为“*”,Text属性为空,其他属性使用默认值。假设正确口令为“12345”。程序运行

后,用户在文本框中输入口令,并按下【Enter】键确认输入完毕。在输入过程中,每输入一个字符,都会触发文本框的KeyPress事件,并返回输入字符的ASCII码值。事件过程中,当获取的ASCII码值为13时,即用户按下【Enter】键时表示口令输入完毕,然后判断其正确性。程序运行结果如图4-6所示。

图4-6 程序运行结果

编写命令按钮Text1的KeyPress事件代码:

Private Sub Text1_KeyPress(KeyAscii As Integer)

If KeyAscii = 13 Then

If Text1.Text = "12345" Then

MsgBox "恭喜,口令正确", 0, "口令验证"

Text1.Text = ""

Else

MsgBox "口令错误,请重新输入", 0, "口令验证"

Text1.Text = ""

End If

End If

End Sub

教学后记:

VB顺序结构练习

VB顺序结构及选择结构练习 一、单选题 1.在窗体上画一个命令按扭(名称为Command1),然后编写如下事件过程 Private Sub Command1_Click() b=5 c=6 Print a = b + c End Sub 程序运行后,单击命令按扭,其结果为(D) A)a=11 B)a=b + c C)a= D)False 2. 在窗体上画一个命令按扭(名称为Command1),然后编写如下事件过程 Private Sub Command1_Click(D) a=11 b=5 c=6 Print a = b + c End Sub 程序运行后,单击命令按扭,其结果为() A)a=11 B)a=b + c C)a= D)True 3.以下语句的输出结果是(B) a = Sqr(3) Print Format(a,”$$#### : ###”) A)$1.732 B)$$1.732 C)$1732 D)$$00001.732 4.以下程序段的输出结果是(D) a = Sqr(3) b = Sqr(2) c =a>b Print c A)-1 B)0 C)False D)True 5.以下语句的输出结果是(C) Print Format$ (32548.5,”000,000.00”) A)32548.5 B)32,548.5 C)032,548.50 D)32,548.50 1.假定有如下语句: answer$=MsgBox(“String1”,, “String2”, “String3”,2) 执行该语句后,将显示1个信息框,此时如果单击“确定”按扭,则answer$的值为(D)A)String1 B)String2 C)String3 D)1

《VB选择结构程序设计》教学设计

《VB选择结构程序设计》教学设计 山东省临清市第二中学吴焕英 【案例背景】 高中信息技术新课程的实施,其课程目标定位于全面提升学生的信息素养,其课程的设置从知识与技能、过程与方法、情感态度与价值观三个方面实施这个课程目标。然而,众多的老师实施新课程后发现:教学内容的范围比以前更广泛了、课时远远不够、教学软硬件资源缺乏等诸多问题。因此,如何更有效地开展新课程教学,成为老师们迫切需要解决的问题。本教学案例从学生的实际情况出发,根据现有的数学、英语基础,结合简单的生活实例,引导学生进行探索式学习,问题从简单的英语口语入手,过渡到课题的研究学习。原本枯燥无味的VB程序设计,在简单、形象的生活实例下,激发了学生的思考与探索思维。这样的教学案例,值得我们反思研究、总结与完善。 【教材分析】 算法与程序设计是普通高中信息技术课程中选修模块之一,本模块旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。 “选择结构”是教育科学出版社出版的高级中学课程标准实验教科书、算法与程序设计第二章第三节的内容,共分三课时,本课为第二课时。主要内容是用选择结构编写简单的程序解决具体问题。用选择结构编写简单的程序解决具体问题是在学生已经掌握了程序设计数据的表示与处理的基础上,理解了顺序结构的前提后提出的。 通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去体会和理解程序设计的思想,而且也为多分支选择结构的学习打下基础。 【学生分析】 高一的学生在数学课中已经有了算法和程序设计的基础,学生对事物的分析、综合能力及独立思考能力、分析解决问题的能力都有了一定的水平,在教师的有效引导下,有能力进行自我探究,如果用一种学生比较感兴趣的,能够贴近学生日常生活的例子来分析选择结构的话,那么学生会比较感兴趣。 【教学目标分析】 通过教师引导学生去探究、发现技术背后所蕴含的技术价值和技术思想,使其获得知识与技能的同时,理解和掌握过程与方法,这样才能够学会认知,学会做事,乃至学会生活,提高终生学习的能力、分析解决问题的能力,满足其终身发展的需要,成为适应信息社会的公民。 因此本节课的目标有以下几项:

vb选择结构教案

卓资县职业中学实训学案 班级_____姓名_________科目: VB 程序设计主备:闫森审核:日期: 课题:选择结构程序设计实际应用(2) 实验目的: 1、掌握If语句的使用。 2、掌握Select Case语句的使用。 实验内容与过程 说第一步:独学(请同学们独立完成以下任务) 知识回顾: 1、单分支条件语句格式:①IF <表达式> THEN 语句块 End If ②IF <表达式> THEN 语句块 2、双分支条件语句格式: IF <表达式> THEN 语句块1 Else 语句块2 End If 任务1(基本设计题) 题目:一般网络游戏只允许成年人进入,你来编写一个根据 明 : 本 节 课 只 完 成 任 务 1 和 任 务 2 的 题 目 要 求 及 问 年龄判断是否成年的小程序。(规定成年人年龄>18周岁) 请你根据题意,利用双分支条件语句格式2种方法(单行和 多行)编写程序代码,并上机测试。 设计界面如下: 编写程序代码:

题 。课后作业下次实训务必完成。第二步:合作(问题)探究(对学、群学) 任 务 2. ( 提 高 设 计 题) 在 “ 神州号”程序中,需要判断飞船飞行状况。当飞船速度继续 加大时,飞船将达到第二宇宙、第三宇宙速度(见下表)试 编写程序,输入不同的飞船速度V,判断它的各种飞行状况, 显示出来 飞船速度V 单位 (km/s) 飞行状况情况 程序界面如下: 补充程序代码: Private Sub command1_click() Dim V AS single, n AS integer V= VAL(InputBox(“SPEED=”,”输入速度”)) <=V< 1--Move around Earth飞船绕 地球做匀速圆周运动 1 11 19<=V< 2--Move around SUN飞船离开 地球的控制 ,围绕太阳转 2 V> 3--Break gravitate of solar 飞船挣脱太阳引力飞出太阳 系 3 其它警告出错信息0

vb复习题选择结构

'【程序填空】 '------------------------------------------------------- '功能:输入任何一个英文字母x, ' 若x的值为"a","c","d-f" ,则显示x的大写字母; ' 若x的值为"m","o","p-z",则显示x的小写字母; ' 若x的值为其它的值,则显示xa(如输入的X的值是g,则显示ga)。 '------------------------------------------------------- Private Sub Command1_Click() x = Text1.Text '**********SPACE********** 【?】 '**********SPACE********** Case 【?】 Label1.Caption = UCase(x) Case "m", "o", "p" To "z" Label1.Caption = LCase(x) Case Else '**********SPACE********** 【?】 End Select End Sub ------------------------------------------------------- '【程序填空】 '------------------------------------------------------- '功能:窗体上建立了一个文本框Text1("输入口令")和一个命令按钮Command1("检查")。' 判断密码是否正确,并显示相应提示 ' 在加载窗体时设置密码框最大长度为8,密码显示字符为“*” '------------------------------------------------------- dim x as string Private Sub Command1_Click() x = Text1.Text '**********SPACE********** If x 【?】 "12345678" Then MsgBox ("欢迎你用机!") Else MsgBox ("对不起,口令错") End If Text1.Text = "" Text1.SetFocus End Sub

VB程序设计——选择结构.

VB程序设计——选择结构 南京市九龙中学李李 ■教材分析 选择控制结构是程序的三个基本结构中的一个重要结构,计算机的逻辑判断能力就是通过选择结构来完成的。条件语句中的“条件”是用关系表达式、逻辑表达式来描述的。程序中能否实现正确的“选择”决定于关系表达式或逻辑表达式的正确描述。关系表达式与逻辑表达式是本节中教学的重点与难点。 用选择结构编写简单的程序解决具体问题是在学生已经掌握了程序设计数据的表示与处理的基础上,理解了顺序结构的前提后提出的。通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去体会和理解程序设计的思想。 ■学情分析 学生在前面的课上对vb程序设计已经有了一定的基础,学生的分析、综合能力及独立思考能力、分析解决问题的能力都有了一定的水平,在教师的有效引导下,有能力进行自我探究,如果用一种学生比较感兴趣的,能够贴近学生日常生活的例子来分析选择结构的话,那么学生会比较感兴趣。 ■教学目标 1.知识与技能 1.了解选择结构的基本概念。 2.了解关系表达式与逻辑表达式的概念。 3.能利用VB中的条件语句实现简单的选择结构。 2.过程与方法 经历实践、分析、归纳,掌握IF语句的格式和功能。 3.情感态度与价值观 运用半成品加工策略,完善程序,发展学生思维的逻辑性及严谨的学习态度。 4.行为与创新 培养学生利用计算机的反馈作用进行探究学习的能力。 ■课时安排 安排1课时。 ■教学重点与难点 1.教学重点 让学生学会使用VB语言的If分支语句,掌握分支判断程序结构,来解决实际问题,

并且培养学生的探索、创新能力。 2.教学难点 对解决问题的方法和步骤的理解,并能根据实际问题写出程序代码。■教学方法与手段 讲述与讨论、实验与验证。 ■课前准备 教学课件、实例程序 ■教学过程

《VB选择结构》教学设计

选择结构 杭州市余杭高级中学张明华 【案例背景】 高中信息技术新课程的实施,其课程目标定位于全面提升学生的信息素养,其课程的设置从知识与技能、过程与方法、情感态度与价值观三个方面实施这个课程目标。 本教学案例从学生的实际情况出发,根据现有的知识基础,结合简单的生活实例,引导学生进行探索式学习,问题从简单的例子入手,过渡到研究学习。原本枯燥无味的VB程序设计,在简单、形象的生活实例下,激发学生的思考与探索思维。 【教材分析】 算法与程序设计是普通高中信息技术课程中选修模块之一,本模块旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。 “选择结构”是教科书《信息技术基础》第三章第四节《算法及其实现》中的一部分内容。3.4节,按浙江省普通高中学科教学指导意见,安排12个课时。选择结构安排在第7节,课时量为1课时。主要内容是用选择结构编写简单的程序解决具体问题。 通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去体会和理解程序设计的思想,而且也为多分支选择结构的学习打下基础。 【学生分析】 高一的学生对事物的分析、综合能力及独立思考能力、分析解决问题的能力都有了一定的水平,在教师的有效引导下,有能力进行自我探究,如果用一种学生比较感兴趣的,能够贴近学生日常生活的例子来分析选择结构的话,那么学生会比较感兴趣。 【教学目标分析】 通过教师引导学生去探究、发现技术背后所蕴含的技术价值和技术思想,使其获得知识与技能的同时,理解和掌握过程与方法,这样才能够学会认知,学会做事,乃至学会生活,提高终生学习的能力、分析解决问题的能力,满足其终身发展的需要,成为适应信息社会的公民。 教学目标 1.知识与技能: (1)掌握选择结构实现条件判断控制。 (2)能够运用选择结构设计编制程序解决问题。 (3)培养学生的逻辑思维能力,促进学生对问题解决方法的理解。 2.过程与方法 通过一些实例的体验、分析,确定选择结构算法的应用范围,并能对学习和生活中出现的关于选择的情况能画出流程图,并写出选择算法中的主要语句;

《VB选择结构程序设计》教学设计

《VB选择结构程序设计》教学设计 普宁二中黄水燕 【案例背景】 高中信息技术新课程的实施,其课程目标定位于全面提升学生的信息素养,其课程的设置从知识与技能、过程与方法、情感态度与价值观三个方面实施这个课程目标。然而,众多的老师实施新课程后发现:教学内容的范围比以前更广泛了、课时远远不够、教学软硬件资源缺乏等诸多问题。因此,如何更有效地开展新课程教学,成为老师们迫切需要解决的问题。本教学案例从学生的实际情况出发,根据现有的数学、英语基础,结合简单的生活实例,引导学生进行探索式学习,问题从简单的英语口语入手,过渡到课题的研究学习。原本枯燥无味的VB程序设计,在简单、形象的生活实例下,激发了学生的思考与探索思维。这样的教学案例,值得我们反思研究、总结与完善。 【教材分析】 算法与程序设计是普通高中信息技术课程中选修模块之一,本模块旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。 “选择结构”是教育科学出版社出版的高级中学课程标准实验教科书、算法与程序设计第二章第三节的内容,共分三课时,本课为第二课时。主要内容是用选择结构编写简单的程序解决具体问题。用选择结构编写简单的程序解决具体问题是在学生已经掌握了程序设计数据的表示与处理的基础上,理解了顺序结构的前提后提出的。 通过本课的学习,可以促进学生对问题解决方法和思想的理解与掌握,从而提升学生的问题解决能力,让学生在按照一定的流程解决问题的过程中,去体会和理解程序设计的思想,而且也为多分支选择结构的学习打下基础。 【学生分析】 高一的学生在数学课中已经有了算法和程序设计的基础,学生对事物的分析、综合能力及独立思考能力、分析解决问题的能力都有了一定的水平,在教师的有效引导下,有能力进行自我探究,如果用一种学生比较感兴趣的,能够贴近学生日常生活的例子来分析选择结构的话,那么学生会比较感兴趣。 【教学目标分析】 通过教师引导学生去探究、发现技术背后所蕴含的技术价值和技术思想,使其获得知识与技能的同时,理解和掌握过程与方法,这样才能够学会认知,学会做事,乃至学会生活,提高终生学习的能力、分析解决问题的能力,满足其终身发展的需要,成为适应信息社会的公民。 因此本节课的目标有以下几项: 1.知识与技能: (1)掌握分支选择结构实现条件判断控制。 (2)能够运用分支选择结构设计编制程序解决问题。 (3)培养学生的逻辑思维能力,促进学生对问题解决方法的理解。

相关主题
文本预览
相关文档 最新文档