基本的控制结构教学控制结构及算法一
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
If vbRetry = MsgBox("用户名不是数字或者长度超过6位,重试", vbRetryCancel + 48, "错误提示") Then Text1.SetFocus Text1.Text = ""
Else End
End If End If End Sub
4.2 选 择 结 构
1. If…Then语句(单分支结构) If <表达式> Then 语句块
例:
正确的:
sr!=0.1
Text1.Text = "欢迎使用Visual Basic 6.0 "
ia% = 10 / 3
‘ia的结果为3
错误的:x+y=10 rnd( )=0.5 x=y=5
二、与用户交互函数和过程
1. InputBox函数:输入函数
InputBox(提示信息,对话框标题,缺省值,x 坐标,y坐标) 例:在屏幕上显示图示的对话框:
双分支结构实现:
If x<>0 Then y=sin(x)+sqr (x*x+1) Else y=cos(x)-x^3+3*x End If
3. If…Then…ElseIf语句(多分支结构)
形式: If <表达式1> Then
<语句块1> ElseIf <表达式2>Then
<语句块2> …
[Else 语句块 n+1 ]
分析:
帐号6位,MaxLength为6,LostFocus时判断IsNumeric函数 密码PassWordChar为“*”,MsgBox函数设置密码错对话框。
Private Sub Command1_Click() If Text2.Text = "12345" Then MsgBox "恭喜您!" Else
相应的语句如下: Dim strName As String * 40 strName= InputBox("请输入你的姓名" + vbCrLf + "然后单击确定" , "输入框" ) 也可以使用如下语句: Dim strName As String * 40, strS1 As String * 40 strS1 = "请输入你的姓名" + Chr(13) + Chr(10) + "然后单击确定" strName= InputBox(strS1, "输入框" , , 100,100) 当键盘输入“王晓明” 后,变量strName获得键盘输入的值。
End If
或 If <表达式> Then <语句>
例:已知两个数x和y,比较它们的大小, 使得x大于y. If x<y Then t=x x=y y=t
End If 或 If x<y Then t=x: x=y: y=t
重要的是学会两个数的交换,若上述语句次序变一下,结果如何?
2. If…Then…Else语句(双分支结构)
If vbRetry = MsgBox("密码输入错误!", vbRetryCancel + 48, "错误提示") Then Text2.SetFocus Text2.Text = ""
Else End
End If End If End Sub
Private Sub Text1_LostFocus() If IsNumeric(Text1.Text) = False Or Len(Text1.Text) > 6 Then
If x > 0 And y > 0 Then
MsgBox "坐标在第一象限内"
ElseIf x < 0 And y > 0 Then MsgBox "坐标在第二象限内"
ElseIf x < 0 And y < 0 Then MsgBox "坐标在第三现象内"
ElseIf x > 0 And y < 0 Then MsgBox "坐标在第四象限内"
If <表达式> Then <语句块1>
Else
<语句块2>
End If
If <表达式> Then <语句1> Else <语句2>
计算分段函数:
y
wenku.baidu.com
sin
x
x2 1
cos x x3 3x
x0 x0
单分支结构实现: y=cos(x)-x^3+3*x If x<>0 Then y=sin(x)+sqr (x*x+1)
End If
例:输入直角坐标系上某一点的坐标x和y,判断该点在哪个象限内。
Private Sub Form_Click()
Dim x As Single, y As Single
x = InputBox("请输入x轴的坐标", "输入框")
y = InputBox("请输入y轴的坐标", "输入框")
4.1 顺 序 结 构
• 顺序结构:代码按照书写顺序执行,主要语句包括赋值语句 、输入语句、输出语句等。
• 流程图如:
开始
定义变量
变量赋初值
计算 输出结果
结束
4.1 顺 序 结 构
一、赋值语句
形式:变量名=表达式 或 对象名.属性名=表达式
说明:1、首先计算“=”后面表达式的值,然后再赋值给变量。 2、赋值号左侧必须是变量或对象的属性,不能是常量、函数和表达式 3、赋值号两边数据类型必须一致,否则强制转化成左侧的精度。 4、不能在一条一句中同时给多个变量赋值。
InputBox函数举例
• 例如:自由落体位移计算公式s=1/2(gt2+vt),输入初始速度v和下落时间t,求 t时间内经过的距离s。
• Private Sub Form_Click() • Dim v As Single • Dim t! • Dim g As Single, s As Single • g = 9.18 • v = InputBox("请输入初始速度") • t = InputBox("请输入时间的值") • s=g*t^2/2+v*t • Print "总共下落了"; s; "米" • End Sub
2. MsgBox函数和MsgBox语句:输出函数
函数形式:变量[%] = MsgBox(提示,按钮,标题)
语句形式:MsgBox 提示,按钮,标题
按钮值如下:
函数返回所选按钮整数值:
例如:编一帐号和密码检验程序。
要求:
帐号不超过6位数字,有错,清除原内容再输入。 密码输入时在屏幕上以 “*”代替; 若密码错,显示有关信息, 选择“重试”按钮,清除原内容再输入,选择“取消”按钮, 停止运行。
Else End
End If End If End Sub
4.2 选 择 结 构
1. If…Then语句(单分支结构) If <表达式> Then 语句块
例:
正确的:
sr!=0.1
Text1.Text = "欢迎使用Visual Basic 6.0 "
ia% = 10 / 3
‘ia的结果为3
错误的:x+y=10 rnd( )=0.5 x=y=5
二、与用户交互函数和过程
1. InputBox函数:输入函数
InputBox(提示信息,对话框标题,缺省值,x 坐标,y坐标) 例:在屏幕上显示图示的对话框:
双分支结构实现:
If x<>0 Then y=sin(x)+sqr (x*x+1) Else y=cos(x)-x^3+3*x End If
3. If…Then…ElseIf语句(多分支结构)
形式: If <表达式1> Then
<语句块1> ElseIf <表达式2>Then
<语句块2> …
[Else 语句块 n+1 ]
分析:
帐号6位,MaxLength为6,LostFocus时判断IsNumeric函数 密码PassWordChar为“*”,MsgBox函数设置密码错对话框。
Private Sub Command1_Click() If Text2.Text = "12345" Then MsgBox "恭喜您!" Else
相应的语句如下: Dim strName As String * 40 strName= InputBox("请输入你的姓名" + vbCrLf + "然后单击确定" , "输入框" ) 也可以使用如下语句: Dim strName As String * 40, strS1 As String * 40 strS1 = "请输入你的姓名" + Chr(13) + Chr(10) + "然后单击确定" strName= InputBox(strS1, "输入框" , , 100,100) 当键盘输入“王晓明” 后,变量strName获得键盘输入的值。
End If
或 If <表达式> Then <语句>
例:已知两个数x和y,比较它们的大小, 使得x大于y. If x<y Then t=x x=y y=t
End If 或 If x<y Then t=x: x=y: y=t
重要的是学会两个数的交换,若上述语句次序变一下,结果如何?
2. If…Then…Else语句(双分支结构)
If vbRetry = MsgBox("密码输入错误!", vbRetryCancel + 48, "错误提示") Then Text2.SetFocus Text2.Text = ""
Else End
End If End If End Sub
Private Sub Text1_LostFocus() If IsNumeric(Text1.Text) = False Or Len(Text1.Text) > 6 Then
If x > 0 And y > 0 Then
MsgBox "坐标在第一象限内"
ElseIf x < 0 And y > 0 Then MsgBox "坐标在第二象限内"
ElseIf x < 0 And y < 0 Then MsgBox "坐标在第三现象内"
ElseIf x > 0 And y < 0 Then MsgBox "坐标在第四象限内"
If <表达式> Then <语句块1>
Else
<语句块2>
End If
If <表达式> Then <语句1> Else <语句2>
计算分段函数:
y
wenku.baidu.com
sin
x
x2 1
cos x x3 3x
x0 x0
单分支结构实现: y=cos(x)-x^3+3*x If x<>0 Then y=sin(x)+sqr (x*x+1)
End If
例:输入直角坐标系上某一点的坐标x和y,判断该点在哪个象限内。
Private Sub Form_Click()
Dim x As Single, y As Single
x = InputBox("请输入x轴的坐标", "输入框")
y = InputBox("请输入y轴的坐标", "输入框")
4.1 顺 序 结 构
• 顺序结构:代码按照书写顺序执行,主要语句包括赋值语句 、输入语句、输出语句等。
• 流程图如:
开始
定义变量
变量赋初值
计算 输出结果
结束
4.1 顺 序 结 构
一、赋值语句
形式:变量名=表达式 或 对象名.属性名=表达式
说明:1、首先计算“=”后面表达式的值,然后再赋值给变量。 2、赋值号左侧必须是变量或对象的属性,不能是常量、函数和表达式 3、赋值号两边数据类型必须一致,否则强制转化成左侧的精度。 4、不能在一条一句中同时给多个变量赋值。
InputBox函数举例
• 例如:自由落体位移计算公式s=1/2(gt2+vt),输入初始速度v和下落时间t,求 t时间内经过的距离s。
• Private Sub Form_Click() • Dim v As Single • Dim t! • Dim g As Single, s As Single • g = 9.18 • v = InputBox("请输入初始速度") • t = InputBox("请输入时间的值") • s=g*t^2/2+v*t • Print "总共下落了"; s; "米" • End Sub
2. MsgBox函数和MsgBox语句:输出函数
函数形式:变量[%] = MsgBox(提示,按钮,标题)
语句形式:MsgBox 提示,按钮,标题
按钮值如下:
函数返回所选按钮整数值:
例如:编一帐号和密码检验程序。
要求:
帐号不超过6位数字,有错,清除原内容再输入。 密码输入时在屏幕上以 “*”代替; 若密码错,显示有关信息, 选择“重试”按钮,清除原内容再输入,选择“取消”按钮, 停止运行。