首页 主任信箱 联系我们  
   VB教学课件
 

第 五 讲

基本课题:语句及书写格式、顺序结构、分支结构

授课日期

2004.9.15

2004.9.15

授课班级

03级计算机5、6班

03级计算机7、8班

教 学 目 的 与 要 求:

本讲主要介绍代码的书写规则、分支结构设计的有关概念和If语句的两种格式(单行结构和块结构)以及Select Case语句的语法格式,要求同学们理解选择结构设计的使用条件,学会使用If语句和Select Case语句进行编程。

教 学 的 重 点、难 点:

重点:代码书写规则、分支结构的格式

对 教 材 的 处 理 和 意 见:

以教材为主,联系实际情况及时做补充。


2.4 语句与控制结构

2.4.1 语句与书写格式

1. 程序代码中不区分字母的大小写

2. 语句书写自由
同一行中可以书写多条语句,语句间用冒号【:】分开
单行语句可以分行书写,在本行后加续行符【空格和下划线_】
一行允许多达255个字符

3.注释有利于程序的维护和调试
注释用单引号【’】引导或:Rem,可以直接出现在语句后面。

如果程序代码很长的时候,一行一行地注释令人觉得难以忍受。VB本身提供了这个功能,在主菜单“视图”选项的“工具栏”下,选中Edit,VB的界面会出现一排工具按钮,其中的手形图标按钮后的两个按钮用于“设置注释块”和“解除注释块”。

注意:在同一行内,续行符后面不能加注释。

2.4.2 顺序结构

格式:

……

<语句1>

<语句2>

……

运行时,顺序结构中的语句严格按照其位置的先后顺序执行。

例如:

Private Sub Form_Load()

Text1.Text = " "

Text2.Text = " "

Command1.Enabled = False

Command2.Enabled = True

End Sub

2.4.3 分支结构

功能:使程序依照条件而执行不同的代码段。VB支持的分支结构有:

(1)单行If(行分支语句)

(2)IIf函数

(3)块If (块分支语句)

(4)elseif(块分支中的多分支语句)

(5)select case情况语句(多分支结构)

1. If语句

(1)单行的条件语句

功能:单行If语句是最简单的分支语句,整个结构在一行中完成。用来判断某个条件或组合条件是否满足,并决定进行什么样的简单的处理。

格式: If <条件> Then <语句组1> [Else <语句组2>]

说明:

①整个语句结构必须在一行(逻辑行)内写完。

②<条件>可以是关系表达式,也可以是数值表达式或布尔表达式。如果以数值表达式做条件,则非0值为真,0为假。

③语句组1,语句组2可以是一条语句,也可以是多条。多条时用冒号隔开。

④只选择一组语句执行。如果没有Else子句,<语句组1>为必要参数,在<条件>为True时执行。

程序举例:

例1(5-3):输入x,计算y的值。其中

x, x≥0

y = {

-x,x<0

例2(5-4):已知两个数x和y,比较它们的大小,输出较大数。

(2)使用IIf函数

使用IIf函数可以实现一些比较简单的选择结构。语法结构为:

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

说明:

①<条件表达式>可以是关系表达式、布尔表达式、数值表达式。如果用数值表达式作条件,则非0为真,0为假。

②<真部分>是当条件表达式为真时函数返回的值,可以是任何表达式。

③<假部分>是当条件表达式为假时函数返回的值,可以是任何表达式。

④语句y=IIf(<条件表达式>,<真部分>,<假部分>)相当于

If <条件表达式> then <真部分> Else <假部分>

程序举例:

例3(5-5):将例1中命令按钮Command1的单击(Click)事件代码改为IIf格式

(3)块If (块分支语句)

虽然If语句使用方便,可以满足许多选择结构程序设计的需要,但是当Then部分和Else部分包含较多内容时,在一行中就难以容纳所有命令。为此,VB提供了块If语句,将一个选择结构用多个语句行来实现。块If语句又称为多行If语句,其语法结构为:

If <条件> Then
<语句组1>

[Else
<语句组2>]

End If

说明:

①分支结构中的各语句块执行后,均转到end if的下一条继续执行。

②结构中的end if表示块分支语句的结束,不可省略。

③块结构中then;else后的语句与then;else不在同一行上。


F

条件表达式

T


程序举例:

例4(5-6):将例1中命令按钮Command1的单击(Click)事件代码改为块If语句

例5(5-7):将例2中命令按钮Command1的单击(Click)事件代码改为块If语句

(4)If语句的嵌套

①If语句的嵌套

If语句的嵌套是指If或Else后面的语句块中又包含If语句。语句形式如下:

If <条件1> then

If <条件2> then

……

End If

……

End If

程序举例:

例6(5-8):键盘输入3个不同的数,将它们从大到小排序。

分析:对数逐个进行比较,如果后面的数大于前面的数,则交换。

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

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

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

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

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

编写程序,输入购物款数,计算并输出优惠价。

②If语句的嵌套格式ElseIf

如果出现多层If语句嵌套,将使程序冗长,不便阅读。为此VB提供了带ElseIf的块If语句来处理当条件为假时又内嵌块If语句的情形,以使程序简化易写。其语法结构为:

If <条件1> Then
<语句组1>
Elseif <条件2> Then
<语句组2>

……
[Else
<语句组n>]
End If

说明:执行顺序

若表达式1的值为true,则执行语句块1,否则,若逻辑表达式2的值为true,则执行语句块2;依次类推.

注意:

a.分支结构中的每一个语句块执行后,均转去执行end if 的下一条语句。

b.结构中的elseif项可以有多个,但else项只能有一个。

c.结构中end if表示多行结构分支语句的结束,不可省略。

d.注意格式。

程序举例:

例8(5-10):在例7中使用带ElseIf的块If语句来计算出优惠价。

2. 多分支条件选择语句Select Case

功能:当用elseif语句使程序结构显得较为杂乱,而用情况语句select case 将使程序的结构更清晰.

特点:从多个选择结构中,选择第一个条件为真的路线作为执行的路线。语法格式为:

Selelct Case <测试条件>
[Case <表达式列表1>
[<语句组1>]]
[Case <表达式列表2>
[<语句组2>]]
……
[Case Else
[<语句组n+1>]]
End Select

说明:执行顺序

执行了select case语句后,VB首先判断测试表达式与哪个case的表达式值列相匹配,若有,即执行对应case子句后的语句块,然后跳转到end select语句处;若没有,则执行case else中的else语句块,然后跳转到end select语句处。

注意:

(1)测试表达式的类型可以是数值型或字符型。

(2)各值列项可以取下列形式之一,也可以是下列各种形式的列表.

a)<表达式1>[,<表达式2>]….:该种表达方式常用来表达一些具体的取值.例如:case3,7

b)<表达式1>to <表达式2>:表示测试表达式的范围.其中表达式1的值必须小于表达式2的值.:eg.Case 4 to 10case 1 to 4 ,7 to 9,”nuts” to “soup”

c)is <比较运算符><表达式>:表示测试表达式的关系.若关系成立,则执行对应语句块.另外is 关键字与比较运算符结合,也常用来表达一个数值范围.

Eg.Caseis <190可使用的比较运算符有:<,<=,>,>=,=,<>

(3)如果测试表达式与多个case子句中的表达式相匹配,则只执行与之匹配的第一个case语句块.

(4)结构中case else为可选项,若它省略,则当测试表达式与所有表达式值列不匹配时,不执行任何语句块,直接跳到end select.为了处理那些不可预知的测试表达式值建议不要省略case else项.

程序举例:

例9(5-12):在例7中使用Select Case语句来计算优惠价,只需将其中的命令按钮Command1的单击Click事件代码改为:

例10(5-14):编写一个对输入字符进行转换的程序。转换规则为:将其中的大写字母转换成小写字母,小写字母转换成大写字母,空格不转换,其余转换成“*”。要求每输入一个字符,马上就进行判断和转换。

例:轮流显示图像

 

第一讲 概述
第二讲 集成开发环境、创
建、发布

第三讲 基本数据类型、常
量与变量

第四讲 运算符和表达式、
常用内部函数
第五讲 顺序、分支结构
第六讲 循环结构
第七讲 数组
第八讲 过程与函数调用
第九讲 VB常用控件介绍(
一)
第十讲 VB常用控件介绍(
二)
第十一讲 VB常用控件介绍
(三)
第十二讲 VB常用控件介绍
(四)
第十三讲 简易记事本的编
辑功能设计(一)
第十四讲 简易记事本编辑
功能设计(二)
第十五讲 记事本管理功能
设计(一)
第十六讲 记事本管理功能
设计(二)
第十七讲 计算器设计
第十八讲 补充:鼠标、键
盘事件
第十九讲 实现图片浏览器
第二十讲 简单贺卡设计与
绘图操作(一)
 
潍坊职业学院信息工程系网络中心制作