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

合集下载

第04章 VB程序控制结构

第04章 VB程序控制结构
21
第 4 章 VB 程序控制结构
4.2.4 数据的输出 3. Format格式输出函数 格式:Format (表达式[, “格式字符串”])
符 号 0 # , 作 用 用0填充不足的位置 位置不足时不填充0 千分位 表达式 1234.567 1234.567 1234.567 格式字符串 "00000.0000" "#####.####" "##,##0.000" "####.##%" 显示结果 01234.5670 1234.567 1,234.567 123456.7%
9
第 4 章 VB 程序控制结构
4.2.1 赋值语句
● “=”符号有两个意义
赋值号、关系运算符等号 形式相同,系统会根据所处的位置判断符号的意义。
● 赋值号左边只能是变量,不能是常量、常数符号、
表达式。
下面均为错误的赋值语句:
Now( )=x+y '左边是表达式(函数)
5=sqr(s)+x+y
X+y=z
'左边是常量
'左边是表达式
10
第 4 章 VB 程序控制结构
【例4.2】 鸡兔同笼,已知鸡兔共有H个头,它们的脚共 有F只。编写程序,计算出鸡兔各有多少只。
分析:假设有X只鸡,有Y只兔,列出方程组如下:
X Y H 2X 4Y F
X ( 4H - F )/2 Y ( F - 2H )/2
第 4 章 VB 程序控制结构
被单击的按钮 确定
系统内部常量 VbOk
返回值 1
取消 终止 重试 忽略 是 否
VbCancel VbAbort VbRetry VbIgnore VbYes vbNo

第四章VB控制结构

第四章VB控制结构

4)需要输入多个值,则必须多次执行或调用InputBox函数。
2013年7月12日星期五 商丘师范学院计算机科学系
Visual Basic程序设计
例4.1利用InputBox输入基本工资和营业额,按营业额的5% 提成,计算实发工资并显示。 Private Sub Form_Click() Dim sfgz!, jbgz!, y As Single
MsgBox 提示,[按钮],[标题]
其中:按钮项是一整型表达式,决定信息框按钮的 数目、类型及出现在信息框上的图标形式。
2013年7月12日星期五 商丘师范学院计算机科学系
Visual Basic程序设计
Then MsgBox ("数制超出范围"): End Then MsgBox "数制超出范围", , "警告": End
商丘师范学院计算机科学系
2013年7月12日星期五
Visual Basic程序设计
3. If…Then…ElseIf语句(多分支结构) 形式: If <表达式1> Then <语句块1> ElseIf <表达式2>Then <语句块2> … [Else 语句块 n+1 ] End If 注意: 1) 此处Else和If之间不能有空格,否则程序出错。 2)“表达式1-n”都是逻辑表达式。 3)不管有几个分支,程序执行了满足条件的一个分支后,其余分支不再执行。 4) 一个多分支结构中只有一个End If语句。 5)当多分支中有多个表达式同时满足时,只执行第一个与之匹配的语句块。 注意多分支中表达式的书写顺序。 6) 块结构的条件语句可以嵌套 。
重要的是学会两个数的交换,若上述语句次序变一下,结果如何?

VB教程完整版第4章Visual Basic的基本控制结构PPT课件

VB教程完整版第4章Visual Basic的基本控制结构PPT课件

第4章:Visual Basic基本控制结构
5
17.08.2020
第4章:Visual Basic基本控制结构
6
17.08.2020
3. If…Then…ElseIf语句(多分支结构) 当要处理的实际问题有多个条件时,就
要用到该语句结构。
语句格式如下:
If <条件表达式1> Then <语句块1>
17.08.2020
第4章:Visual Basic基本控制结构
14
4.3 循环结构 循环结构是根据某一条件(即循环条件)反
复执行某一段程序(即循环体)。循环体被反复 执行的次数称为循环次数。VB中提供了两种类型 的循环语句:计数型循环语句和条件型循环语句。
4.3.1 For…Next 语句 该语句是计数型循环语句,用于循环次数已知
13
Select Case 语句和If…Then…ElseIf语句 的区别
可以看出,对于多分支选择结构,用Select Case 语句比用If…Then…ElseIf语句更为 直观,程序可读性强。两者的区别在于: Select Case 语句只对单一表达式求值,并 根据求值结果执行不同的语句块,而 If…Then…ElseIf语句可以对不同的表达式 求值。所以,当对多个条件进行判断时, 只能用If…Then…ElseIf语句。
Select Case 语句的格式如下: Select Case 测试表达式
Case 表达式值1 <语句块1>
Case 表达式值2 <语句块2>

[Case Else <语句块n+1>]
End Select
第4章:Visual Basic基本控制结构

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

VB语言程序设计课件第4章 VB程序控制结构

VB语言程序设计课件第4章 VB程序控制结构

精选PPT
3
算法的特性
1.可行性:算法中的每一个步骤都应当能有效地执行,并得到确 定的结果。“比如除数不能为0”
2.确定性:算法中的每一个步骤都应当是确定的,而不应当是含 糊的、模棱两可的。
3.有穷性:一个算法应包含有限的操作步骤,而不能是无限的。 4.输入性(有零个或多个输入):是指在执行算法时需要从外界取
用于将指定的值赋给变量或对象属性. n=n+1 将变量n的值加1后的结果再赋给变
量n Text1.fontsize=text1.fontsize+5 变量或对象属性类型应与表达式类型相容
(x%=11/4 y%=“123.45”). 相容时,将表达式的结果转换为变量的类型,
然后再赋给左边的变量.P58课下自行实践 *建议自己写程序时尽量不要出现左右类型不符
【例2】 输出两整数中的较大数。
精选PPT
23
3.多分支块结构
假如中了50万那么
买辆雅阁本田
另外假如中了100万那么
买辆宝马
另外假如中了400万那么
买辆法拉利 另外、反之(没中奖)
天天电动车
结束假如
精选PPT
24
多分支块结构
应用时根据需要 对条件进行增减
ห้องสมุดไป่ตู้
假如中了50万那么
买辆雅阁本田
另外假如中了100万那么
精选PPT
7
顺序 结构
选择结构,或称选取结构,或称分支结 构。A或B中可以有一个是空的。
Te
F

A
B
择 结

精选PPT
8
补全下面的流程图 ----开始(结束)输入(输出)
精选PPT
9

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:输入二级考试成绩,要求显 测试表达式的值应是数字或字符型 示对应三级制的评定。 • 测试项的取值必须与测试表达式

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
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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
– IIF( )函数
– Choose( )函数
4.3 循环结构
循环是在指定的条件下重复执行某 些指令。 两种类型的循环语句:
– 计数型循环语句:用于循环次数确定的
情况 (FOR循环语句) – 条件循环语句:用于循环次数未知的 情况 (Do Loop循环语句)
表达式
T
F
语句块
2 双分支结构
If …Then…Else 语句
(1) If < 表达式 > Then < 语句块 1 > Else < 语句块 2 > End If
(2)If < 表达式 > Then < 语句1> Else <语句2>
作用

当表达式为非零(True)时,执行Then 后的语句块1(或语句1),否则,执行 Else后面的语句块2(或语句2)。

例题4.4 (P83)
4.2.2 Select case语句
Select Case 语句是多分支结构的另一 种表示。比If 语句更直观。 选择多于三个以上,采用Select Case 较好。

Select case 变量或表达式 Case 表达式列表1 <语句块1> Case 表达式列表2 <语句块2> …… [ Case Else <语句块n> ] End Select

– 给变量赋值
– 给控件的属性赋值

例如: sngRate! =0.1 „将0.1赋给单精度变量sngRate txtName.Text = “Hu”
赋值处理

当赋值等号左右数值类型不相同时,强制转换成 左边变量的类型(精度) n%=3.5 „结果为4(四舍五入)
当赋值等号左边是数值类型,而右边表达式是数 字字符串,则VB自动转换成数值类型再赋值,如 表达式不是数字字符串,则出错。

2 MsgBox()函数

语法: 变量名=MsgBox(提示[,按钮][,标题]) 其中: 提示:与InputBox函数相同 标题:与InputBox函数相同 按钮:整数表达式,决定信息框按钮的 数目和类型及其图标类型。参见 P77,表1.4.1
表1.4.1 “按钮”设置值及其意义
分组
内部常数 vbOkOnly vbOkCancel vbAbortRetryIgnore vbYesNoCancel vbYesNo vbRetryCancel

P82, 例4.3
4 If 语句的嵌套

在If 或者Else后面的语句中又 有If 语,称为If 嵌套。
If < 表达式1 > Then if <表达式2> Then …… End If …… End If
注意
If 嵌套一般采用锯齿型,增强程序的可 读性。 一个If 必须与一个End If匹配,End If与 最近的If语句配对。
作用
根据变量或表达式中的结果,与 各case语句中的表达式列表的值进 行比较,匹配则执行该语句块。如 果有多个匹配,则只执行第一个匹 配的语句块。
T
表达式列表1 F T 表达式列表2 F …… T 表达式列表n F 语句块n+1 语句块n 语句块2 语句块1
注意:
Select Case 语句只能有一个变量,不能 对多个变量进行条件判断。 多个变量只能采用If…Then…ElseIf 语句
MaxLength属性设置为6; – 输入结束后,通过LostFocus事件,来判断账 号输入的正确性。 – 若出错,则显示出错信息,重新输入。

密码
– 要显示“ * ”, 将PasswordChar属性设置为“ * ”即
可。 – 输入结束按确定键后,判断密码的正确性。正确 没有显示,出错显示出错信息。
最后计分
显示题目、结果和正确是否
4.2.3 条件函数

VB提供了两个条件函数
– IIF( )函数
– Choose( )函数
代替 If 语句 代替 Select语句
(1) IIf( )函数
IIf(表达式,当条件为T的值,当条件为F的值) 例如:求x, y中的大的数,放入Tmax变量中 TMax = IIf ( x > y, x, y ) 等效于: If x>y then Tmax=x Else Tmax=y End If
16 32 48 64 0 256 512 0 4096
红色STOP标志 询问信息图标 ? 警告信息图标 ! 信息图标 i 第一个按钮为默认
第二个按钮为默认 第三个按钮为默认
默认 按钮
模式
应用模式 系统模式
注意:

四组方式可以组合使用。一般采用内部常数形 式,而不采用按钮值形式。 例如:
I=MsgBox(“密码错误”,vbRetryCancel+vbExclamation,”输入密码”)
(2) Choose( )函数
Choose(整数表达式,选项列表) 根据整数表达式的值,选择选项列表的项: 1 第一项 2 第二项 ……. <1 或 > 选项数目 Null strOp=Choose(intNOp, “+” , ”-”, ”x”, ” ÷”)
忠告:

最好不要采用这两个函数
InputBox函数的作用

打开一个标准对话框,等待用户输入内容, 用户单击“确定(OK)”或者按回车键, 则该函数返回输入的值,其类型为字符型。 例如:
Dim strName As String * 40, strS1 As String strS1 = "请输入你的姓名" + vbCrLf + "然后回车确定" strName = InputBox(strS1, "输入框", , 100, 100)
n%=“123” „结果为123,与n%=Val(“123”)效果一样

n%=“1a23”
„出现“类型不匹配”错误
当逻辑类型赋值给数值类型时,True
转换为-1,False转换为0; 反之,当数值型赋值给逻辑类型,则 非零转换为True,0转换为False。
任何非字符类型赋值给字符类型,自
其中,
表达式 可为关系表达式、逻辑表达式、算术 表达式。非零为True,零为False。 语句块:一条或者多条语句。 形式(2)中的语句只能是一条,或者多条 简单语句,之间用冒号分开。 尽量用第一种形式编程。



当表达式为 True时,执行 Then后的语句 块。 否则,不作任 何处理
标题:字符串表达式,在对话框的标题 显示。如果省略,则显示应用程 序的名称。 默认:字符串表达式。当对话框中没有 输入时,则该默认值作为输入的 内容。 x坐标位置,y坐标位置:整数表达式, 确定对话框左上角在屏幕上的位 置,屏幕左上角为坐标原点,单 位:twip。1000 twip = 1 inch。
动转换为字符类型。
注意:
尽量采用转换函数进行转换,避免VB
系统自动转换。这样能避免出现意想 不到的错误。 VB系统会自动判断赋值符号“=“ 和关 系运算符等于符号”=“。 赋值符号”=“左边只能是变量,不能 是常量、或者表达式。 赋值语句: intX = intX + 1
2 人机交互函数和过程
I=MsgBox(“密码错误”,53,”输入密码”)

模式:若应用模式建立对话框,则必须响应对 话框才能继续当前的应用程序,但可以切换到 其它应用程序。若应用系统模式建立对话框, 则所有的应用程序都被挂起,直到用户响应对 话框为止。
表1.4.2 MsgBox函数返回值意义 内部常数 vbOk vbCancel vbAbort vbRetry vbIgnore vbYes VBNo
相关文档
最新文档