Presentation is loading. Please wait.

Presentation is loading. Please wait.

Visual Basic 程序设计 第四讲.

Similar presentations


Presentation on theme: "Visual Basic 程序设计 第四讲."— Presentation transcript:

1 Visual Basic 程序设计 第四讲

2 第四章 基本的控制结构 4.1 顺序结构 4.2 选择结构 4.3 循环结构 4.4 其它辅助控制语句 4.5 常用算法
第四章 基本的控制结构 4.1 顺序结构 4.2 选择结构 4.3 循环结构 4.4 其它辅助控制语句 4.5 常用算法 4.6 常见错误 (顺序、条件、循环) Chen Ying

3 一. 赋值语句 形式: [LET]变量名=表达式 作用: 将表达式的值赋值给变量名, 一般用于给变量赋值或对控件设定属性值。
例: sRate!=0.1 Text1.Text = "欢迎使用Visual Basic 6.0” 说明:当表达式的类型与变量的类型不一致时, 强制转换成左边的精度 例: iA% = 10 / iA中的结果为3 注意:虽然赋值号与关系运算符等于号都用“=”表示, VB系统会根据所处位置自动判断是何种意义的符号。 Chen Ying

4 二. 与用户交互 函数和过程 1. InputBox函数 InputBox(提示[,标题][,默认][,x 坐标位置][,y坐标位置])
二. 与用户交互 函数和过程 1. InputBox函数 InputBox(提示[,标题][,默认][,x 坐标位置][,y坐标位置]) 其中: 提示 提示信息,标题 对话框标题,默认 输入区缺省值 函数返回输入值(字符串) ,值类型为字符类型 例:要在屏幕上显示如右上角的对话框,相应的语句如下: Dim strName As String * 40, strS1 As String * 40 strName= InputBox( “请输入你的姓名” + vbCrLf + “然后单击确定” , “输入框” ) 或者: strS1 = “请输入你的姓名” + Chr(13) + Chr(10) + “然后单击确定” strName= InputBox(strS1, “输入框”, , 100,100) 当键盘在输入框输入“王晓明” 后,变量strName获得键盘输入的值 Chen Ying

5 2. MsgBox函数和MsgBox过程 按钮值意义(P77,表1.4.1) 函数返回所选按钮整数值
Chen Ying

6 例4.1 编一帐号和密码检验程序 要求: 帐号不超过6位数字,密码4位字符(假设为“Chen”) 密码输入时在屏幕上以 “*”代替
若输入有错,显示提示信息 选择“重试”按钮,清除原内容,焦点重新定位,再输入 选择“取消”按钮,停止运行 分析: 帐号6位:MaxLength为6,输入结束按Tab引发LostFocus事件, IsNumeric函数判断是否为数字 密码:PassWordChar为“*”,单击“确定”激发事件判断密码对错,MsgBox函数设置密码错对话框 例:Li4-1.vbp Chen Ying

7 三.选择结构 1. If…Then语句(单分支结构) If <表达式> Then 语句块 End If
例:已知两个数x和y,比较它们的大小,使得x大于y。 If x<y Then t=x x=y y=t 或 If x<y Then t=x: x=y: y=t 注意:重要的是学会两个数的交换,若上述语句次序变一下,结果如何? Chen Ying

8 2. If…Then…Else语句(双分支结构)
<语句块1> Else <语句块2> End If 或:If <表达式> Then <语句1> Else <语句2> 例:计算分段函数 单分支结构实现: y=cos(x)-x^3+3*x If x<>0 Then y=sin(x)+sqrt(x*x+1) 双分支结构实现: If x<>0 Then y=sin(x)+sqrt(x*x+1) Else y=cos(x)-x^3+3*x End If Chen Ying

9 3. If…Then…ElseIf语句(多分支结构)
<语句块1> ElseIf <表达式2>Then <语句块2> [Else 语句块 n+1 ] End If 说明:不管有几个分支,依次判断,当某条件满足,执行相应的语句块,其余分支不再执行;若条件都不满足,且有Else子句,则执行该语句块,否则什么也不执行。 注意:ElseIf不能写成 Else If。 Chen Ying

10 例4.3:已知百分制成绩mark,显示对应的五级制成绩。
下列算法哪些正确,哪些错误? Chen Ying

11 If语句的嵌套是指If或Else后面的语句块中又包含If语句。 If <表达式1> Then
形式如下: If <表达式1> Then If <表达式11> Then End If 例:已知x,y,z三个数,使得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 注意:书写锯齿型 If 与End If配对。 Chen Ying

12 5. Select Case语句(情况语句) Select Case 变量或表达式 Case 表达式列表1 语句块1 Case 表达式列表2
语句块2 [Case Else 语句块n+1] End Select <表达式列表>与<变量或表达式>同类型 可以是下面四种形式之一: 例: 1,表达式 “A” 2,一组枚举表达式(用逗号分隔) ,4,6,8 3,表达式1 To 表达式 To 100 4,Is 关系运算符表达式 Is < 60 数值型或字符串表达式 Chen Ying

13 例:已知变量strC中存放了一个字符,判断该字符是字母字符、数字字符还是其他字符。
用多分支结构实现: (例4.2) If Ucase(strC) >=" A" And Ucase (strC) <=" Z" Then Print strC + "是字母字符" ElseIf strC >=" 0" And strC <=" 9" Then Print strC + "是数字字符" Else Print strC + "其他字符" End If 用Select Case语句实现: (例4.5) Select Case strC Case "a" To "z","A" To "Z" Print strC + "是字母字符" Case "0" To "9" Case Else End Select Chen Ying

14 分析:产生1~10操作数,可通过Int(10 * Rnd + 1) 实现 设置的控件 Label1 Text1
例4.7 由计算机来当一年级的算术老师,要求给出一系列的1~10的操作数和运算符,学生输入该题的答案,计算机根据学生的答案判断正确与否,当结束时给出成绩。 分析:产生1~10操作数,可通过Int(10 * Rnd + 1) 实现 设置的控件 Label1 Text1 Picture1 例:Li4-7.vbp Command1 Chen Ying

15 6.条件函数 IIf函数形式是: IIf(表达式,当表达式为True时的值,当表达式为False时的值)
例: 将x,y中大的数放入Tmax变量中,则:Tmax=IIf(x > y,x,y) Choose函数形式是: Choose(数字类型变量,值为1的返回值,值为2的返回值……) 例: Nop是1-4的值,转换成 + 、-、×、÷运算符的语句如下: Op= Choose(Nop,"+","-","×","÷") 说明:当Nop值为1,返回字符串“+”,赋予Op变量;Nop值为2,返回字符串“-”,赋予Op变量,依次类推;当Nop是1-4之间的非整数,系统自动取其整数再判断;若Nop不在1-4之间,函数返回Null值。 Switch函数形式是: Switch(条件表达式1,条件表达式1为True时的值 [,条件表达式2,条件表达式2为True时的值……]) Chen Ying

16 常见错误 1.在选择结构中缺少配对的结束语句 对多行式的If块语句中,应有配对的 End If语句结束。
2. 多边选择ElseIf关键字的书写和条件表达式的表示 ElseIf不要写成Else If; 多个条件表达式次序问题 3. Select Case语句的使用 Select Case 后不能出现多个变量; Case子句后不能出现变量 Chen Ying

17 上机实习二要求: 上课例题 实验二 实验三 Chen Ying


Download ppt "Visual Basic 程序设计 第四讲."

Similar presentations


Ads by Google