第四章 VB程序的控制结构

合集下载

第4章 VB基本控制结构

第4章 VB基本控制结构

(二)用文本框(TextBox控件)输入数据

格式:
字符串型变量名 = 对象名.Text
或者:数值型变量名 = Val(对象名.Text) 例:x=text1.text
八 数据的输出

在程序设计中,对输入的数据进行加工处理后, 往往需要将中计算或处理结果通知用户,这就是 数据的输出 。 在VB中,可以使用下面的4种方法之一进行数据 输出:Print方法、消息框(MsgBox函数)、文 本框(TextBox控件)、标签(Label控件) 。
(三)用文本框(TextBox控件)输出

格式:文本框名称.Text = 表达式 说明:
(1)注意在输出时进行数据类型之间的转换。
(2)作为输出的文本框一般将Locked属性设置为True, 用户不得改变输出框中的内容。
【作业】 编程实现单击窗体后,显示输出以下 格式的字符。
4.2 选择结构
(2)<表达式>可以是数值或字符串。对于数值先计算 后输出,字符串原样输出;省略表达式输出一空行。
(3)当表达式列表有多个时,表达式之间必须用空格、 分号或逗号隔开。分号和空格表示光标定位在上一 个显示字符之后(紧凑格式);逗号表示光标定位 在下一个打印区的开始位置(标准格式)。
(4)可以用me代表当前窗体。
1.
3 If 语句的嵌套
在一个If 语句中,又包含另一些If 语句称为If 语句的嵌套。 语法格式: If 条件1 then 语句块1 Elseif 条件2 then 语句块2 …… [else 语句块n+1] End if 说明:执行过程是先判断条件表达式1,若其为真,则执 行语句块1,结束整个If 语句,否则判断条件表达式2,若 其为真,则执行语句块2,结束整个If 语句,依此类推, 当判断条件表达式n不满足时,若最后有else语句则执行 else语句,否则结束if语句的执行。

VB程序设计第四章 基本的控制结构

VB程序设计第四章 基本的控制结构

4.2 选择结构

选择结构作用
– 对条件进行判断,根据判断结果,选择
执行不同的分支。
If 条件语句 Select case语句 条件函数

4.2.1 If 条件语句

If 条件语句有多种形式
– 单分支
– 双分支
– 多分支
1 单分支结构
If …Then 语句
(1) If < 表达式 > Then < 语句块> End If (2)If < 表达式 > Then < 语句>

例题:
编程实现账号和密码的输入程序,要求: (1)账号不超过6位数字,密码为4位字符, 假设为“Gong” (2)密码输入时,不显示输入的字符,用 “*”代替。 (3)输入不正确,显示有关信息。单击“重 试”,则清除原来输入的内容,等待重新 输入;单击“取消”,终止程序运行。
分析 账号
– 账号不超过6位数字,则将文本框的
第四章
基本的控制结构
Summary
1. 顺序结构(Sequence) 2. 选择结构(Selection) 3. 循环结构(Repetition) 4. 其它辅助控制语句 5. 常用算法(一)
4.1 顺序结构

顺序结构
– 按照各语句出现的先后顺序执行
– 包括: 赋值语句 输入 / 输出语句
按钮值
描述 “确定” “确定”、“取消” “终止”、“重试”, “忽略” “是”、“否”、“取 消” “是”、“否” “重试”、“取消”
按钮 数目
0 1 2 3 4 5
按钮 类型
vbCritical vbQuestion vbExclamation vbInformation vbDefaultButton1 vbDefaultButton2 vbDefaultButton3 vbApplicationMode vbSystemMode

vb课件第四章-基本控制结构

vb课件第四章-基本控制结构
个问题,我们就会给出下面的程序:
Private Sub Form_Click() Dim s&,x% s=0 x=1 s = s + x ^2 x=x+2 s = s + x ^2 x=x+2 s = s + x ^2 …… x = x +2 'x的值累加到99 s = s + x ^2 Print “1~100之间所有奇数的平方 和=";s End Sub
的行李费。
根据题意计算公式如下:
weight×0.2 Pay=
weight≤50
(weight-50)×0.5+50×0.2 weight>50
程序代码如下: ' "计算"按钮代码 Private Sub Command1_Click() Dim sinWeight as single Dim sinPay as single sinWeight = Text1.Text If sinWeight > 50 Then sinPay =(sinWeight - 50)* 0.5 + 50 * 0.2 Else sinPay = sinWeight * 0.2 End If Text2.Text = pay End Sub
二、程序的书写规则:
1、将单行语句分成多行:
用续行符(一个空格后面跟一个下划线) 将长语句分成多行。
2、将多个语句合并到同一行上
通常,一行之中有一个 Visual Basic 语句, 而且不用语句终结符。但是也可以将两个或多 个语句放在同一行,只是要用冒号 (:) 将它们 分开。 Text1.Text = "Hello" : Text1.BackColor = 255

第4章VB程序控制结构

第4章VB程序控制结构
① 输 入
计算机
② 处 理
输出信息
③ 输 出
1. 赋值语句
用于将指定的值赋给变量或对象属性. n=n+1 将变量n的值加1后的结果再赋给变
量n Text1.fontsize=text1.fontsize+5 变量或对象属性类型应与表达式类型相容
(x%=11/4 y%=“123.45”). 相容时,将表达式的结果转换为变量的类型,
……
Else
……
End If
多分支结构应用
【例3】给定一个百分制成绩的分数,编程实现显示 对应的五级制成绩。
<60
E
60~69
D
70~79
C
80~89
B
90~100
A
思考:
若用户输入了0~100以外的数值,应如何修改上述程序?
IF应用
【例4】判断某年是否为闰年
满足以下条件之一的年份即为闰年: ①能被400整除 ②能被4整除,但不能被100整除
例1 布尔与整型的关系
Dim b As Boolean, n As Integer b=1 Print b b=0 Print b n=b Print n b=3 Print b n=b Print n
例2.求梯形面积
Val函数功能---将数字字符串转换为数值
例3 重点算法:设计算法交换两个变量a和b的值
例5: 变量strC中存放了一个字符,判断该字符类型。
用Select Case语句实现: Dim strC as string*1 如何获得strC?
Select Case strC Case "a" To "z","A" To "Z" Print strC + "是字母字符" Case "0" To "9" Print strC + "是数字字符" Case Else Print strC + "其他字符"

第04章VB控制结构

第04章VB控制结构
Visual Basic 程序设计教程
陈章良
E-MAIL:CHENZHL_YT@
第四章 VB控制结构
4.0 程序结构
4.1 顺序结构
4.2 选择结构
4.3 循环结构 4.4 其他辅助控制语句 4.5 综合应用 4.6 程序调试
4.0 程序结构
一个VB程序由两部分组成:
Viasual ,是由众多的对象构成了程序的可视 界面。 Basic,是响应各种事件的程序代码,也是程 序设计的重点和难点。
(1)对象:窗体、图形框或打印机。缺省为窗体。 (2)Spc(n):从当前位置起空n个空格 (3)Tab(n):从最左端开始计算的第n列 (4)分号:定位在上一个被显示的字符之后 (5)逗号:定位在下一个打印区开始处(每区14列) 例4.3 Print方法输出图mat格式输出函数 Format函数用于制定字符串或数字的输出 格式。
逻辑数据转换 为整形数据时 ,True为-1, False为0
1.5
其他类型数据转换 为逻辑数据时, 非0转换为True, 0转换为False
2.5
4.1.1 赋值语句
(4)任何非字符类型赋值给字符类型, 自动转换为字符类型。
例:strBh$=6012 【注意】
赋值号左边只能是变量,不能是常量 、常数符号或表达式。
3)If … Then … ElseIf语句(多分支结构)
4)If 语句的嵌套
4.2.1 If条件语句
1. If…Then语句(单分支结构) 形式:If <表达式> Then
语句块(一条或多条语句)
End If

If <表达式> Then <语句>
IF演示

VB程序设计 第四章 基本的控制结构

VB程序设计 第四章 基本的控制结构

第四章基本的控制结构主要内容●顺序结构●输入函数(过程)InputBOX●输出函数(过程)MsgBox●选择结构(If、Select Case、Iif、Shoose、Switch)●循环结构(For … Next、Do … Loop、While … Wend)●其他辅助控制语句(Goto 、Exit、End、With)●常用算法(累加连乘特殊数类穷举法递推法最大和最小值)4.1 顺序结构一. 赋值语句形式: [LET]变量名=表达式作用: 将表达式的值赋值给变量名。

一般用于给变量赋值或对控件设定属性值.[例] sRate!=0.1Text1.Text = "欢迎使用Visual Basic 6.0”说明:(1)当表达式结果为数值类型而与变量的精度不同时,强制转换成左边变量的精度。

如:iA% = 10/3 iA中的结果为3,而表达式为3.33333n%=11/2 结果n的值为6(四舍五入), 而表达式为5.5 (2)当表达式是数字字符串,左边变量是数值类型,自动转换成数值类型,再赋值。

但如有非数字字符或空串,则出错。

如:X% = "9/2"(出错)(3)当逻辑型赋值给数值变量时,False 转成0,True转成-1后再赋给数值变量。

(4)当数值型表达式赋给逻辑型变量时,非0数值转成True,0值转成False 后再赋给逻辑变量(5)任何非字符类型表达式赋给字符变量一律转成字符类型赋给字符变量 [例] s$=True 结果s的值为 Truestr$=1.23E+3 结果string的值为”1230”。

s$=5>11 结果s的值为 False注意:●虽然赋值号与关系运算符等于号都用“=”表示,VB系统会根据所处的置自动判断是何种意义的符号。

●赋值语句的左边只能是变量,不能是表达式,符号常量。

●不能在同一个语句中同时给各个变量赋值。

●正确理解类似 sum=sum+k 赋值语句的含义。

第4章 VB的基本控制结构

第4章 VB的基本控制结构

(2)设置界面对象属性,如表3-4所示。
(3)程序代码设计如下: Private Sub Command1_Click() Dim Grade As Single, PassCount As Integer, total As Integer Dim i As Integer, Sum As Single Sum = 0 PassCount = 0 Average = 0 total = 0 For i = 1 To 100 ' 当输入学生成绩个数大于100时停止循环 Grade = Val(InputBox("请输入学生的VB成绩:")) If Grade < 0 Then ' 输入负数时退出循环 Exit For Else If Grade >= 60 Then PassCount = PassCount + 1 '计算及格学生人数 total = total + 1 '计算总人数 Sum = Sum + Grade '计算总分 End If Next i If total <> 0 Then Average = Sum/total '防止用户未输入值时溢出 Text1.Text = Str(total) Text2.Text = Str(PassCount) Text3.Text = Str(Average) End Sub

Select Case 结构
Select Case 测试表达 式 Case 测试项1 A组语句 Case 测试项2 B组语句 …… Case Else n组语句 End Select
说明: •例6:输入二级考试成绩,要求显 测试表达式的值应是数字或字符型 示对应三级制的评定。 • 测试项的取值必须与测试表达式

VB第四章 基本的控制结构

VB第四章 基本的控制结构
1)语句格式要正确

赋值号左边只能是变量名,不能是函数或表达式
如下面形式是错误的: cos(x)=y 5=y

X+3=y 不能在同一个赋值语句中给多个变量赋值 : y=1: z=1
2)数据类型的转换问题
2、使用文本框控件
★3、使用InputBox( )函数
Case 表达式1
<语句块1> Case 表达式2
<语句块2>
……. Case 表达式n <语句块n> [Case Else <语句块N+1> End Select
例:窗体上有一个按钮cmdRank和两个文本框txtInput、txtOutput,在文 本框txtInput中输入成绩,回车后,在txtOutput中显示级别。 Private Sub txtInput_keypress() dim intMark As Integer if keyascii=13 then Case Is>=70 txtOutput.text=“中等”
分析以下代码的作用 Dim Strname As String * 40 Dim Strs1 As String * 40 Strs1 = "请输入你的姓名" + Chr(13) + Chr(10) + "然 后单击确定" Strname = InputBox(Strs1, "输入框", , 100, 100) Print Strname
Private Sub cmd1_Click ( ) Dim int1 As Integer, int2 As Integer
int1 = CInt(Text1.Text)

vb4-控制结构

vb4-控制结构

• End Select
• a = Val(Text1) • If a < 60 then 用语句 • Text2 = "不及格" ELSEIF 实 • ElseIf a < 70 then 现多分支 • Text2 = "及格" • ElseIf a < 80 Then • Text2 ="中等" • ElseIf a <90 Then • Text2 ="良好" • ElseIf a <= 100 Then • Text2 ="优秀" • ElseIf a <= 0 Or a > 100 Then
例2: 已知变量ch中存放了一个字符,判断该字符是 字母字符、数字字符还是其他字符。
If UCase(ch) >= "A" And UCase(ch) <= "Z" Then MsgBox(ch + "是字母字符") '考虑大小写字母 ElseIf ch >= " 0" And ch <= "9" Then ' 数字字符 MsgBox(ch + "是数字字符") Else ' 除上述字符以外的字符 MsgBox(ch + "是其他字符") End If
注意:ElseIf不能写成 Else If
4.2.3多分支结构 Select Case语句
Select Case 变量或表达式 Case 条件1 <语句块1> Case 条件2 <语句块2> … [Case Else <语句块n+1>] End Select

vb程序设计第04章基本的控制结构

vb程序设计第04章基本的控制结构
用一个IF语句和一个嵌套的IF语句实现
T y 与 z 交换 z 为最小数 F
x >y>z
If x<y Then t=x: x=y: y=t If y<z Then t=y: y=z: z=t If x<y Then t=x: x=y: y=t End If End If
x< y
T x 与 y 交换 使得 x >y
确定
If Text2 <> "" And Not IsNumeric(Text2) IsNumeric(Text2)是一个函数
4.If 语句的嵌套 If语句的嵌套是指If或Else后面的语句块中又包含If语句。 形式如下: F x<y If <表达式1> Then T If <表达式11> Then … x 与 y 交换 End If x >y … End If F y<z 例4.4 已知x,y,z三个数,使得x>y>z
2. MsgBox函数和MsgBox过程
函数形式: 变量[%] = MsgBox(提示[,按钮][,标题]) 过程形式: MsgBox 提示[,按钮][,标题] 按钮值如下:
分组 默认 按钮 模式 内部常数 VbDefaultButton1 VbDefaultButton2 VbDefaultButton3 值 0 256 512 描述 第1个 第2个 第3个
例4.2a 根据边长判断三角形类型

例4.3已知百分制成绩mark,显示对应的五级制成绩
下列方法哪些正确,哪些错误?
方法一 方法二 If mark >= 90 Then If mark < 60 Then Print "优" Print "不及格" ElseIf mark >= 80 Then ElseIf mark < 70 Then Print "良" Print "及格" ElseIf mark >= 70 Then ElseIf mark < 80 Then Print "中" Print "中" ElseIf mark >= 60 Then ElseIf mark < 90 Then Print "及格" Print "良" Else Else Print "不及格" Print "优" End If End If 方法三 If mark >= 60 Then Print "及格" ElseIf mark >= 70 Then Print "中" ElseIf mark >= 80 Then Print "良" ElseIf mark >= 90 Then Print "优" Else Print "不及格" End If

VB程序基本控制结构

VB程序基本控制结构

4.1.1 赋值语句
本章目录
形式: 变量名=表达式 作用:计算右边表达式的值,然后赋给左边的变量。 一般用于给变量赋值或对控件设定属性值。
表达式可以是任何类型,一般应与变量名的类型一致。当 表达式的类型与变量的类型不一致时,强制转换成左边的 类型。 例:
sRate!=0.1
Text1.Text = "欢迎使用Visual Basic 6.0 "
End If
语句块 1
表达式 2 T
语句块 2
F
表达式 n
T 语句块 n
F 语 句 块 n+1
该语句的作用是根据不同的表达式值确定执行哪个语句块
17
上一页
下一页
4.3 循环结构
本章目录
我们已经学习了顺序结构和分支结构,这种结构的特点
是任何一条语句至多只执行一次,但是在处理实际问题的 过程中,用这种结构来编写程序就长得不能忍受。
初始值 循环体
Do 循环体语句 Loop until条 件
条件
4.3 循环结构
初始值 条件 循环体
初始值 循环体
条件
4.3.1 For循环语句
本章目录
For循环语句用于控制循环次数预知的循环结构。 For 循环变量 =初值 To 终值 [Step 步长]
语句块
[Exit For] 语句块
Next 循环变量 循环变量必须为数值型。
本章目录
24
上一页
下一页
Do…Loop流程
表达式列表 1
F
T 语句块
T 有 Exit Do
F 语句块
Do While…Loop
25
本章目录
语句块

第4章 VB控制结构

第4章 VB控制结构

05:51

21

【例4.5】求n!(n为自然数)
由阶乘的定义可知: n! = 1* 2* 3*…*(n-1)*n
= (n-1)!*n
Private Sub Form_Click() Dim N As Integer, i As Integer, k As Single N = InputBox("输入N:") k=1 For i = 1 To N k = k * i '此语句称为累乘器 Next i Print N; "! = "; k End Sub 操作变量 05:51 Private Sub Form_Click() Dim N As Integer, i As Integer, m As Integer, k As Single N = InputBox("输入N:") k = 1:m = 1 For i = 1 To N k=k*m m = m + 1 '此语句称为计数器 Next i Print N; "! = "; k End Sub 形式变量 22
If x >= 0 Then If x > 0 Then y = 1 Else y = 0 Else y = -1
05:51 11
3.多分支If语句 格式:If 条件1 Then 语句块1 [ElseIf 条件2 Then 语句块2] …… [ElseIf 条件n Then 语句块n] [Else 语句块n+1] End If
05:51

19

说明:
(1)计数型循环的循环次数可用以下公式计算: 循环次数=Int(Abs(b – a)/c)+1

VB程序设计-第4课 VB控制结构

VB程序设计-第4课 VB控制结构

4.1.1 赋值语句
形式: 变量名=表达式 [对象名.] 属性名=表达式 功能:计算表达式的值,再将此值赋给变 量或对象属性。
本章目录
Visual Basic程序设计教程
4.1.1 赋值语句
给变量赋值和设定属性是VB编程中常见 的两个任务。例如: n=n+1 '计数累加 Text1.Text = "" ' 清除文本框的内容 Text1.Text = "欢迎使用VB " ' 文本框显示字符串
思考与练习
要求:运行程序,先弹 出输入姓名的输入框, 输入姓名后再弹出工 资输入输入框,工资 输入提示信息中显示 输入的姓名,然后在 窗体上显示输入的工 资数。
Visual Basic程序设计教程
2.MsgBox过程和MsgBox函数
打开一个信息框,等待用户选择一个按钮。 MsgBox过程形式: MsgBox 提示[,按钮][,标题] 按钮项是一整型表达式,决定信息框按钮的 数目和类型及出现在信息框上的图标形式。
Visual Basic程序设计教程
3. Print方法
Print方法用于输出文本或表达式的值。 Print语法格式如下: [对象名].Print [表达式][;|,] 对象名称 对象名可以是窗体名称、图片框控件 (PictureBox)名称、Debug(立即窗口) 或Printer(打印机)。若省略对象名称, 默认输出到当前窗体。
F F 表达式 2 T 表达式 n T 语句块 2 语句块 n 语 句 块 n+ 1 F
作用:根据不同的表达式值确定执行哪个语句块
Visual Basic程序设计教程
多分支结构例
例4-6 已知变量ch中存放了一个字符,判断该字符是 字母字符、数字字符还是其他字符。 If UCase(ch) >= "A" And UCase(ch) <= "Z" Then MsgBox(ch + "是字母字符") '考虑大小写字母 ElseIf ch >= " 0" And ch <= "9" Then ' 数字字符 MsgBox(ch + "是数字字符") Else ' 除上述字符以外的字符 MsgBox(ch + "是其他字符") End If

第4章 VB控制结构(整理)

第4章 VB控制结构(整理)

InputBox函数示例
例4-1-1(补充) 利用InputBox函数输入圆的半径;
在标签中显示输入的半径和计算所得的圆的面积.
3. 消息对话框MsgBox函数(P63)
变量=MsgBox( 提示字符串 [,按钮样式+图标样式] [,标题字符串])
• 提示字符串:必须指定,消息对话框中显示的字符串 • 按钮图标样式:利用VB给定的符号常量指定消息框
Format(123.46,"0.0E+00") 结果为: 1.2E+02
4.2 选择结构(P69)
4.2.1 If条件语句 4.2.2 Select Case语句 4.2.3 条件函数 IIf
4.2.1 If 条件语句(P69)

If~Then语句(单分支行语句和块语句) If~Then~Else语句(双分支行语句和块语句)
符或为空串,则出错;
当逻辑型值赋值给数值型变量时,True转换为-1, False转换为0. 反之,当数值赋值给逻辑型变量时,非0 转换为True, 0转换为False; 任何非字符型的值赋值给字符型变量,自动转换为字 符型.
4.1.2 数据的输入/输出(P62)
标签和文本框控件
输入对话框InputBox函数
赋值号与表示“相等”关系的关系运算符都用
“=”表示, VB系统会根据表达式或语句所处的 位置自动判断是何种意义的符号.
4. 赋值号两侧数据类型不同时的处理方法(P61)
当右侧表达式与左侧变量精度不同时,系统将右侧表
达式的值强制转换为左侧变量的精度;
当表达式是数字字符串,而左侧变量是数值类型时,自 动转换为数值类型再赋值. 如果表达式中有非数字字

第4章 vb程序控制结构

第4章  vb程序控制结构

有是、否和取消按钮
有是和否按钮 有重试和取消按钮
26
第4章
VB程序控制结构
4.2 顺序结构
表4-2 MsgBox对话框的图标类型
值 16 32 48 64 常量 VbCritical VbQuestion VbExclamantion VbInformation 图标类型 停止图标 问号(?)图标 感叹号(!)图标 信息图标
表4-3 MsgBox对话框的默认按钮
值 常量 默认按钮
0
256 512
VbDefaultButton1
VbDefaultButton2 VbDefaultButton3
指定默认按钮为第一按钮
指定默认按钮为第二按钮 指定默认按钮为第三按钮
27
第4章
VB程序控制结构
4.2 顺序结构
表4-4 MsgBox()函数的返回值
说明
<提示内容>:指定在对 话框中出现的文本,最多 可有1024个字符 。 <对话框标题>:指定对 话框的标题,是可选项。
16
<默认内容>:显示在 文本输入框中,为可 选项 。 <x坐标><y坐标>:确 定对话框左上角在屏 幕上的位置。
第4章
VB程序控制结构
InputBox(提示内容,[对话框标题],[默认内容],[x坐 标],[y坐标]) 例:x = InputBox("请输入5月份销售额(吨):", " 年销售情况统计", "0")
第4章
VB程序控制结构
4.2 顺序结构 4.2.1 赋值语句 举例
Private Sub Command1_Click() Dim b As Integer Text1.Text = "5" b = Text1.Text „字符串类型赋值给数值类型 b=b+3 Text1.Text = b ' 数值类型赋值给字符串类型 End Sub

Vb程序设计教程 第四章 VB控制结构

Vb程序设计教程 第四章 VB控制结构

4、如果被赋值的变量是变体类型(variant 类型)或未定义变量类型(默认类型为变体类 型,即variant类型),则根据表达式的值确定变 量的类型。 5、表达式中参加运算的数据类型变必须一 致,如果不一致,则先转换后运算,而转换的 规则与赋语句不同,是由简单类型向复杂类型 转换。
2、数据的输入与输出 1)利用文本框输入、输出数据,类型为 String(字符串)类型 例: x=val(text1.text) x% = text1.text text1.text=x 字符串于文本框中显示输出 text1.text = str(x) ‘输入数到x中 ‘与上语句等价 ‘将x中值转换成 ‘与上语句等价
3、循环结构——一个模块被重复执行多次
假 条件 真 真 模块 条件 假 模块
注:模块在 一定条件下被执 行多次。
说明:1)对方案一而言,“模块”可能不 能初执行到,而方案二之“模块”至少执行一次; 2)如果“模块”至少执行一次,则二者等价;3) “条件”不能是固定的,须随“模块”的执行而 发生变化,否则无法终止。
ii)连续输出,以;分隔 Print 表达式1;……;表达式n 例:Print “x=“;x iii)定位输出,使用定位控制输出格式 Tab(n):由第n列开始输出 spc(n):插入n个空格
第四章 VB控制结构
一、三种程序设计结构
1、顺序结构——按照书写的顺序,依次 执行每一条语句。 特点:执行完毕“语 句块1”后,执行“语句块 语句块2 2”。 例:计算半径为4.8的园的面积。 r=4.8 ‘半径r赋值 pi=3.1415926 ‘为pi赋值 s=pi*r*r ‘计算园的面积 print s ‘显示面积值
二、常用语句
1、赋值语句 格式:变量 = 表达式 功能:首先计算“表达式”的值,然后将值存 储到“变量”指定的存储单元中。 例: x=x+a ‘将变量a的值累加到变量x中

vb课件第4章.VB的基本控制结构

vb课件第4章.VB的基本控制结构

If条件语 句
3. If…Then…ElseIf 结构
例5 编写一个按月收入分额析计:算选个择人语收句入结调构节税的程序
计算方法如下
每个条件的表示及先后顺序
0
Pay≤1000
(Pay-1000)*0.05 1000<Pay≤2000
Z=
(Pay-2000)*0.15+50 2000<Pay≤3000
If 条件1 Then
(A组语句)
Els若eI条f 条件件12与T条he件n 2换位,
结(B果组会语怎句)样?
……
Else
(n组语句)
End If
Mark=txtScore.Text If Mark >= 90 Then
Print "优" ElseIf Mark >= 60 Then
Print “通过" Else
Select Case 测试表达式
Case 测试项1
A组语句
Case 测试项2
B组语句
……
Case Else
n组语句
End Select
说明: • 测试表达式的值应是数字或字符型 例 应6三•:MSE级MKSE测的ne输a=ena制dlre试值ldmccCrke入ccCcksaa的=csaaaat=e类项ass二tVe具连满三rssscVl评eeskcelaeeeaea型的e\级aPPPcl续种体足i61sPPPc(定lEs18st(rrrTE00et>考rrrT相取iii0elennn形取的某iiistl。e=nnntos,xttteo9M试xttt同9值eKt““"式值范个61t"““如如如0通 未9优a1成通未优.必,0rT.可,围条kT过通":::e绩过通"e须常x以用:件"过x11It,"过)t用2与 ,s)组逗界:"要">测T形51合号1I求o,0s试式使隔T运显29O表为0用开算示界达:符对2式

第四章 VB控制结构(第三版)

第四章 VB控制结构(第三版)

过程形式:MsgBox 提示[,按钮][,标题] 按钮项是一整型表达式,决定信息框按钮的数目
和类型及出现在信息框上的图标形式。
按钮设置值及意义
函数返回所选按钮整 数值的意义
MsgBox函数示例:
例4.2 要求:
编一帐号和密码检验程序。
帐号不超过6位数字,有错,清除原内容再输 入;密码输入时在屏幕上以 “*”代替;若密码错, 显示有关信息,选择“重试”按钮,清除原内容再 输入,选择“取消”按钮,停止运行。
第四章
VB控制结构
目录
4.1 顺序结构
4.2 选择结构
4.3 循环结构 4.4 其它辅助控制语句 4.5 综合应用 4.6 程序调试
4.1 顺序结构
VB具有结构化程序设计的三种结构, 即顺序结构、选择结构、循环结构,是程序 设计的基础。 顺序结构就是各语句按出现的先后次序 执行。
本章目录
一般的程序设计语言中,顺序结构的语 句主要是赋值语句、输入/输出语句等。 在VB中也有赋值语句;而输入/输出可 以通过文本框控件、标签控件、InputBox函 数、MsgBox函数和过程等来实现。
InputBox()函数、MsgBox()函数和MsgBox过程 1. InputBox函数 打开一个对话框,等待用户输入,返回字符串类 型的输入值。 形式: InputBox(提示[,标题][,默认][,x坐标位置]
[,y坐标位置])
InputBox(提示[,标题][,默认][,x坐标位置][,y坐标位置])
常用数值格式符
说明:
对于符号“0”或“#”,相似之处是,若要显示 数值表达式的整数部分位数多于格式字符串的位 数,按其实际数值显示;若小数部分的位数多于 格式字符串的位数,按四舍五入显示。
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章VB程序的控制结构4.1算法概论1.算法的概念算法:指用计算机解决某一问题的方法和步骤。

数值算法:用于解决一般数学解析方法难以解决的问题,如:求超越方程的根、求定积分、解微分方程等。

非数值算法:用于对非数值信息进行查找、排序等。

2.算法的特征(1)确定性:指算法的每个步骤都应确切无误,没有歧义。

(2)可行性:指算法的每个步骤必须是计算机能够有效执行、可以实现的,并可得到确定的结果。

(3)有穷性:指一个算法应该在有限的时间和步骤内可以执行完毕的。

(4)输入性:指一个算法可以有0或多个输入数据。

(5)输出性:指一个算法必须有一个或多个输出结果。

3.算法的评价主要评价指标是:算法是否正确、运行的效率、占用系统资源的多少。

4.算法的描述一般常用流程框图来描述算法。

5.基本算法结构“结构化程序设计方法”规定算法有三种基本结构:顺序结构、选择结构和循环结构6.算法示例(1)欧几里德算法——求两个自然数的最大公约数(2)顺序查找算法——在N个字符串集合中,查找有无特定的字符串存在4.2顺序结构1.赋值语句赋值语句是任何程序设计中最基本的语句,赋值语句都时顺序执行的。

赋值语句的形式为:变量名= 表达式它的作用是计算右边表达式的值,然后赋给左边的变量,表达式的类型应该与变量名的类型一致。

2. 使用说明(1)当表达式为数值型而与变量精度不同时,强制转换成左边变量的精度;(2)当表达式是数字字符串,左边变量是数值类型,自动转换成数值类型再赋值,但当表达式中有非数字字符或空串,则出错。

(3)任何非字符类型赋值给字符类型,自动转换为字符类型;(4)当逻辑型赋值给数值型时,True转换为-1,False转换为0;反之,非0转换为True,0转换为False;(5)赋值号左边的变量只能是变量,不能是常量、常数符号、表达式,否则报错;(6)不能在一句赋值语句中,同时给各变量赋值;(7)在条件表达式中出现的= 是等号,系统会根据= 号的位置,自动判断是否为赋值号;(8)注意N=N+1 是累加中常见的赋值语句,表示将N变量中的值加1后再赋值给N。

54.3选择结构(或称分支结构)1.1. IF条件语句(1)If……Then语句(单分支结构F)语句形式:1)If<表达式> Then语句块End If2)If <表达式> Then <语句>说明:表达式一般为关系表达式、逻辑表达式,也可以为算术表达式,非0为True,0为False;语句块可以是一句或多句,若用2)表示,则只能是一句语句,若多句,语句间需用冒号分隔,而且必须在一行上书写。

例:已知两个数x和y,比较它们的大小,使得x大于y:方法一:if x<y thent=xx=yy=tend if方法二:if x<y then t=x : x=y : y=t注意:将两个变量中的数进行交换时,必须借助于第三个变量才能实现。

(2)If……Then……Else语句(双分支结构)语句形式:1)If <表达式> Then<语句块1>Else<语句块2>End If2)If <表达式> Then <语句1> Else <语句2>(3)If……Then……ElseIf语句(多分支结构)语句形式:If <表达式1> Then<语句块1>ElseIf <表达式2> Then<语句块2>……[ Else语句块n+1 ]End If注意:1)不管有几个分支,程序执行了一个分支后,其余分支不再执行;2)ElseIf不能写成Else If3)当多分支中有多个表达式同时满足,则只执行第一个与之匹配的语句块例:已知变量strC中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。

(4)If语句的嵌套If语句的嵌套是指if 或else后面的语句块中又包含If语句。

语句形式:If <表达式1> ThenIf <表达式11> Then……End If……End If注意:1)对于嵌套结构,为了增强程序的可读性,应该采用缩进形式书写;2)If语句形式若不在一行上书写,必须与End If配对,多个if嵌套,End If与它最接近的E md If配对。

例:已知x、y、z三个数,比较它们的大小并排序,使得x>y>z.2.Select Case语句(情况语句)是多分支语句的又一种形式,语句形式:Select Case 变量或表达式Case表达式列表1语句块1Case表达式列表2语句块2……[Case Else语句块n+1]End Select说明:1)变量或表达式可以是数值型或字符串表达式2)表达式列表I可以是表达式、一组用逗号分隔的枚举值、表达式1 to 表达式2、Is关系运算符表达式;如:case 1 to 10 、case "a","w","e","t" 、case 2,4,6,8,is>103)并不是所有的多分支结构都可以用情况语句代替的。

例:已知输入某课程的百分制成绩mark,要求显示对应五级制的评定,评定条件如下:3.条件函数(1)if函数函数形式:Iif(表达式,当条件为True时的值,当条件为False时的值例:求X、Y中大的数,并放入变量Tmax中:Tmax=Iif(X>Y, X, Y)(2)Choose函数函数形式:Choose(整数表达式,选项列表)如果整数表达式的值是1,则选择列表中的第1项,依次类推;如果小于1或大于列表项数时,则返回NULL。

例:根据nub为1 -4的值,换算成不同的运算符:OP= Choose(nub,“+”,“-”,“×”,“÷”)4.3 循环结构循环是在指定的条件下多次重复执行一组语句。

VB中提供了两种类型的循环语句:计数循环语句和条件型循环语句1. For循环语句(知道循环次数的计数型循环)语句形式:For 循环变量= 初值To 终值[ Step 步长]语句块[Exit For]语句块Next 循环变量说明:1)循环变量必须为数值型2)步长一般为正,初值小于终值;若为负,初值大于终值;缺省步长为1;3)语句块可以是一句或多句语句,称为循环体;4)Exit For 表示当遇到该语句时,退出循环体;执行Next的下一句;循环次数=int((终值- 初值)/步长+1)5)退出循环后,循环变量的值保持退出时的值;6)在循环体内对循环变量可多次引用,但不要对其赋值,否则影响结果。

例1:计算1 ~N的奇、偶数之和。

(N为自然数)例2:打印ASCII码表2. Do……Loop循环(不知道循环次数的条件型循环)是用于控制循环次数未知的循环结构,语法形式有两种:形式1:Do While ……LoopDo [ While | Until 条件]语句块[ Exit Do ]语句块Loop形式2:Do ……Loop WhileDo语句块[ Exit Do ]语句块Loop [ While | Until 条件]说明:1)形式1为先判断后执行,有可能一次也不执行;2)形式2为先执行后判断,至少执行一次;3)关键字While 用于指明条件为真时就执行循环体中的语句,Until刚好相反;4)当省略了While|Until 条件字句,即循环结构仅由Do……Loop关键字构成时,表示无条件循环,这时循环体内应该有Exit Do语句,否则为死循环;5)Exit Do 语句表示当遇到该语句时,退出循环,执行Loop的下一语句。

例:我国现有人口13亿,按人口年增长率0.8%计算,多少年后我国人口超过26亿。

计算公式26=13(1+0.008)n图中的例子是按可变增长率和预计总人口数设计的。

3.循环的嵌套指在循环体内又包含了一个完整的循环结构。

循环嵌套对For 循环和Do……Loop循环均适用。

4.4其它辅助控制语句1.Go To 语句语句形式:Go To标号| 行号说明:(1)Go To语句只能转移到同一过程的标号或行号处;标号是一个字符系列,首字符必须为字母,与大小写无关,任何转移到的标号后面必须有冒号:;行号是一个数字序列;(2)以前BASIC中常用此语句,可读性差;现在要求尽量少用或不用,改用选择结构或循环结构来代替。

2.Exit语句用于退出某控制结构的执行,VB的Exit语句有多种形式,如:Exit For(退出For循环)Exit Do(退出Do)循环)Exit Sub(退出子过程)Exit Function(退出函数)3.End 语句独立的End语句用于结束一个程序的执行,可以放在任何事件过程中,形式为:EndVB 的End语句还有多种形式,用于结束一个过程或块,如:End If End With End Type End Select End Sub EndFunction4.With语句它的作用是可以对某个对象执行一系列的语句,而不用重复指出对象的名称。

但不能用一个With语句设置多个不同的对象。

属性前面需要带点号“·”。

语句形式如下:With 对象名语句块End With例:With for m1. Height=3000. Width=4000. BackColor=RGB(255,0,0)End With4.5程序调试1.VB的调试工具(1)设置自动语法检查打开工具菜单→单击选项命令→选择编辑器页面→将自动语法检测勾上。

(2)利用VB调试工具栏利用该工具栏可以运行程序、中断运行、在程序中设置间断点、监视变量、单步调试、过程跟踪等操作。

2.VB的三种模式(1)设计模式在设计模式下可以进行程序的界面设计、属性设置、代码编写等,标题栏上显示“设计”,在此模式下不能运行程序,也不能使用调试工具。

(2)运行模式执行“运行”菜单中的“启动”命令或单击工具栏上的启动按钮或按F5键,即由设计模式进入运行模式,标题栏显示“运行”,在此阶段可以查看程序代码,但不能修改。

若要修改,必须单击工具栏上的“结束”按钮,回到设计模式,也可以选择“中断”按钮,进入中断模式。

(3)中断模式当程序运行时单击了“中断”按钮,或当程序出现运行错误时,都可以进入中断模式,在此模式下,运行的程序被挂起,可以查看代码、修改代码、检查数据。

修改结束,单击“继续”按钮可以继续程序的运行,也可以单击“结束”按钮停止程序的执行。

3. 常见错误(1)编辑时错误当用户在代码窗口编辑代码时,VB会对程序进行语法检查,当发现语句没有输完、关键字输错等情况时,系统会弹出对话框,提示出错,并在错误处加亮显示,以便用户修改。

相关文档
最新文档