复习-第4章-基本的控制结构及程序调试(例题部分隐藏)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
VB.NET程序设计教程
目录 本章目录
14/51
4.2.2 Select Case语句
(教程P81)
Select Case 变量或表达式 Case 表达式列表1 语句块1 Case 表达式列表2 表达式列表与变量或表达式的类型必 须相同,是下面4种形式之一 : 语句块2 … 1. 表达式 例: "A" [Case Else 2. 一组用逗号分隔的枚举值 2,4,6,8 语句块n+1] 3. 表达式1 To 表达式2 60 To End Select
作用:根据不同的表达式值确定执行哪个语句块
VB.NET程序设计教程
目录 本章目录
12/51
If语句的嵌套
If语句的嵌套是指If或Else后面的语句块中又包含If语 If 表达式1 Then If 表达式2 Then … If x<y Then t=x: x=y: y=t End If If y<z Then … t=y: y=z: z=t End If If x<y Then 例 已知x,y,z三个数, t=x: x=y: y=t 使得x>y>z End If 用一个IF语句和一个嵌套 End If 的IF语句实现
18/51
VB.NET程序设计教程
目录
本章目录
Dim nop As Integer, op As Char (2) Choose函数 Randomize() Choose(整数表达式,选项列表) 1) nop = Int(Rnd() * 4 + op = Choose(nop, "+", "-", "×", "÷" 根据表达式的值i,返回选项列表中第i个选项。如 MsgBox("nop=" & nop & " op=" 果整数表达式的值越出选项范围时,返回Null。 & o
目录
23/51
编程实现
• 1、在购买某物品时,若所花的钱 x 在下述 范围内,所付钱y按对应折扣支付(要求分 别使用if…else和select ..case结构实现): • x x<1000 • 0.9x 1000<=x<2000 • y= 0.8x 2000<=x<3000 • 0.7x x>=3000
Visual Basic.NET 程序设计教程 之基本的控制结构
VB.NET程序设计教程
目录
第四章
4.1 4.2 4.3 4.4 4.5 4.6
基本的控制结构
顺序结构 选择结构 循环结构 其它辅助控制语句 综合应用 程序调试
目录 本章目录
VB.NET程序设计教程
2/51
举例 程序基本的结构
Private Sub Button1_Click(…. ) Handles Button1.Click Timer1.Interval = 200 顺序结构 Timer1.Enabled = True
MsgBox("今天是:" & Now & t) VB.NET程序设计教程 目录
本章目录
19/51
常见错误和难点分析
(实验指导P35))
• 1、If语句书写问题 • 2、在选择结构中缺少配对的结束语句 • 3、多分支选择 ElseIf关键字的书写和条件 表达式的书写 • 4、 多分支结构
VB.NET程序设计教程
不成立 B
b
VB.NET程序设计教程
目录
5/51
根据条件重复执行语句(称为循环体)
a a
不成立 条件 成立 ? 循环体 b
a 循环体
条件? 成立 b II 、直到型循环结构
目录
不成立
I 、 当型循环结构
VB.NET程序设计教程
6/51
4.2 选择结构
计算机要处理的问题往往是复杂多变的, 仅采用顺序结构是不够的。 必须利用选择结构等来解决实际应用中的 各种问题。 VB中主要通过If条件语句和Select情况语 句来实现。它们都是对条件进行判断,根据 判断结果,选择执行不同的分支。
VB.NET程序设计教程
目录
25/51
4.3 循环结构
计算机最擅长的功能之一就是按规定的条件, 重复执行某些操作。 例如,按照人口某增长率,对人口增长统计; 根据各课程的学分、绩点和学生的成绩,统计 每个学生的平均绩点等。 这类问题都可通过循环结构来方便地实现。 VB中提供了主要的两类循环语句: For循环语句(一般已知循环次数); Do条件型循环语句(一般未知循环次数).
Do „Loop While
30/51
VB.NET程序设计教程
目录
本章目录
第四章总结
• 顺序结构 • 选择结构 • 循环结构 • 其它辅助控制语句 • 程序调试
34/51
VB.NET程序设计教程
目录
4.1 顺序结构
一般程序设计语言中顺序结构的语句主要: 赋值语句和 输入/输出语句等。 在VB.net中 赋值语句 输入/输出通过: 文本框控件、标签控件、 InputBox函数、MsgBox函数 Write方法
VB.NET程序设计教程
目录 本章目录
59/51
4.6.1 错误类型
语法错误、运行时错误和逻辑错误三类。 1.语法错误
错误的代码下显示波浪线,任务 窗口上显示警告信息,鼠标指向 波浪线时,显示出错的原因。
VB.NET程序设计教程
目录
本章目录
60/51
2.运行错误
指令代码执行了一非法操作引起的。例如,类 型不匹配、试图打开一个不存在的文件等。程 序会自动中断,并给出有关的错误信息。
VB.NET程序设计教程
目录
35/51
第四章总结
4.2 选择结构
If…. else select….case
4.3 循环结构
For循环语句、Do…Loop语句
4.4 辅助控制语句:Exit For,Exit Do 4.5 程序调试
36/51
VB.NET程序设计教程
目录
4.4 其他辅助控制语句
VB.NET程序设计教程
目录
本章目录
61/51
3.逻辑错误 程序运行后,得不到所期望的结果,这说明程 序存在逻辑错误。 例如,运算符使用不正确、语句的次序不对、 循环语句的起始、终值不正确等。 通常,逻辑错误不会产生错误提示信息,故错 误较难排除,需要程序员仔细地阅读分析程序, 并具有调试程序的经验。
VB.NET程序设计教程
目录 本章目录
10/51
多分支结构
3. If…Then…ElseIf 语句 If 表达式1 Then 语句块1 ElseIf 表达式பைடு நூலகம் Then 语句块2 表达式 1 … T [Else 语句块 n+1] 语句块 1 End If
F F 表达式 2 T 表达式 n T 语句块 2 语句块 n 语 句 块 n+ 1 F
目录
3/51
4.1 顺序结构
VB具有结构化程序设计的三种程序控制结构, 即顺序结构、选择结构、循环结构,是程序设计 的基础。 (1)顺序结构
各语句按出现的先后次序执行 a A
用传统流程 图表示为
B b
4/51
VB.NET程序设计教程
目录
本章目录
根据条件决定执行的语句
传统流程图: 成立 A a
条件?
例4.10 将可打印的 ASCII码制成表格输出
目录 本章目录
Next 的下一语句
VB.NET程序设计教程
28/51
4.3.2 Do…Loop循环语句
Do循环用于控制循环次数未知的循环结构。
形式1: Do { While|Until }<条件> 语句块 [Exit Do 语句块] Loop 形式2: Do 语句块 [Exit Do 语句块] Loop { While|Until} <条件>
100 4. Is 关系运算符表达式 VB.NET程序设计教程
目录 本章目录
Is < 60
15/51
4.2.3 条件函数
(1) IIf函数
IIf(表达式,表达式为真时的值,表达式为假时的值) IIf函数是If … Then …Else 结构的简洁表示 例如,将x,y中大的数,放入Tmax变量中: Tmax = IIf(x > y,x,y) 该语句与如下语句等价 : If x > y Then Tmax = x Else Tmax = y
IF演示
VB.NET程序设计教程
目录
本章目录
8/51
双分支结构
2. If…Then…Else语句 T F 表达式 If 表达式 Then 语句块1 语句块 1 语句块 2 Else 语句块2 End If 或 If 表达式 Then 语句1 Else 语句2 当表达式的值为True时,执行Then后面的 语句块1,否则执行Else后面的语句块2
4.2.3 条件函数
例 根据Nop的值,得到+、-、×、÷中的某运算符: Op= Choose(Nop,"+","-","×","÷") 例4.8 根据当前日期,显示今日是星期几。
t = Choose(Weekday(Now), “星期日”, “星期一”, “ 星期二”, “星期三”, “星期四”, “星期五”, “星期 六”)
1) 循环次数 Int ( >0 初值<终值 =1 时,可省略 步长 <0 初值>终值 =0 死循环
终值 初值 步长
VB.NET程序设计教程
目录
本章目录
27/51
For循环语句
循环变量=初值 F
循环变量≤终值 T 语句块 有 Exit For F 语句块
T
循环变量=循环变量+步长
循环流程: (1) 循环变量被赋初值,它 仅被赋值一次。 (2) 判断循环变量是否在终 值内,如果是,执行循环体; 如果否,结束循环,执行 Next的下一语句。 (3) 循环变量加步长,转(2), 继续循环
VB.NET程序设计教程
目录 本章目录
7/51
4.2.1 If条件语句
1. If…Then语句(单分支结构) 表达式 If <表达式> Then 语句块(可以是一句或多句语句) T 语句块 End If 或 If <表达式> Then <语句>
F
表达式:关系表达式、逻辑表达式,算术表达式。 表达式值按非零为True,零为False进行判断。 该语句的作用是当表达式的值为True,执行Then后 面的语句块,否则不做任何操作。
Variable Arrays
End Sub
Example:
aver = 0 For i = 1 To 100 mark = InputBox(“输入第" & i & "位学生的成绩") aver = aver + mark Next i 循环结构 aver = aver / 100
VB.NET程序设计教程
VB.NET程序设计教程
目录 本章目录
26/51
4.3.1 For循环语句 i%, sum% Dim
For i = 1 To 100 Step For循环语句用于控制循环次数预知的循环结构。 2 sum = 步长] For 循环变量 =初值 To 终值 [Step sum + i Next i 语句块 MsgBox str(sum) [Exit For] 语句块 例4.9 计算1~100的 Next 循环变量 奇数和 循环变量必须为数值型。
VB.NET程序设计教程
本章目录
目录
43/51
4.6 程序调试
随着程序的复杂性提高,程序中的错误也 伴随而来。 对初学者,看到出现错误不要害怕,关键 是如何改正错误,失败是成功之母。 上机的目的,不光是为了验证你编写的程 序的正确性,还要通过上机调试,学会查找 和纠正错误的方法和能力。
VB为调试程序提供了一组交互的、有效的 调试工具。
VB.NET程序设计教程
目录 本章目录
42/51
4.4.2 退出和结束语句
1.Exit语句 VB中有多种形式的Exit语句,用于退出某种控 制结构的执行。Exit的形式如下: Exit For、Exit Do、 Exit Sub、Exit Function 2.End语句 独立的End语句用于结束一个程序的运行,它 可以放在任何事件过程中。
4.4.1 Go To 语句 无条件地转移到标号或行号指定的那行语句。 Go To {标号|行号} 注意:标号是字符序列,首字符必须为字母,标号后 应有冒号;行号是一个数字序列; 代码说明 例4.14 判断输入的数是否为素数 素数就是除1和本身以外,不能被其他任何整数整除的 数。根据此定义,判别某数m是否为素数最简单的方法 就是依次用i=2~m-1去除,只要有一个数能整除m,m就 不是素数;否则m是素数。 要求一定范围内的素数,只要将m作为外循环体变量。
形式1为先判断后执行,有可能一次也不执行; 形式2为先执行后判断,至少执行一次。
VB.NET程序设计教程
目录 本章目录
29/51
Do…Loop流程
表达式列表 1 T 语句块 有 Exit Do F 语句块 T 表达式列表 1 F T F 语句块 T
有 Exit Do F 语句块
Do While„Loop
目录 本章目录
14/51
4.2.2 Select Case语句
(教程P81)
Select Case 变量或表达式 Case 表达式列表1 语句块1 Case 表达式列表2 表达式列表与变量或表达式的类型必 须相同,是下面4种形式之一 : 语句块2 … 1. 表达式 例: "A" [Case Else 2. 一组用逗号分隔的枚举值 2,4,6,8 语句块n+1] 3. 表达式1 To 表达式2 60 To End Select
作用:根据不同的表达式值确定执行哪个语句块
VB.NET程序设计教程
目录 本章目录
12/51
If语句的嵌套
If语句的嵌套是指If或Else后面的语句块中又包含If语 If 表达式1 Then If 表达式2 Then … If x<y Then t=x: x=y: y=t End If If y<z Then … t=y: y=z: z=t End If If x<y Then 例 已知x,y,z三个数, t=x: x=y: y=t 使得x>y>z End If 用一个IF语句和一个嵌套 End If 的IF语句实现
18/51
VB.NET程序设计教程
目录
本章目录
Dim nop As Integer, op As Char (2) Choose函数 Randomize() Choose(整数表达式,选项列表) 1) nop = Int(Rnd() * 4 + op = Choose(nop, "+", "-", "×", "÷" 根据表达式的值i,返回选项列表中第i个选项。如 MsgBox("nop=" & nop & " op=" 果整数表达式的值越出选项范围时,返回Null。 & o
目录
23/51
编程实现
• 1、在购买某物品时,若所花的钱 x 在下述 范围内,所付钱y按对应折扣支付(要求分 别使用if…else和select ..case结构实现): • x x<1000 • 0.9x 1000<=x<2000 • y= 0.8x 2000<=x<3000 • 0.7x x>=3000
Visual Basic.NET 程序设计教程 之基本的控制结构
VB.NET程序设计教程
目录
第四章
4.1 4.2 4.3 4.4 4.5 4.6
基本的控制结构
顺序结构 选择结构 循环结构 其它辅助控制语句 综合应用 程序调试
目录 本章目录
VB.NET程序设计教程
2/51
举例 程序基本的结构
Private Sub Button1_Click(…. ) Handles Button1.Click Timer1.Interval = 200 顺序结构 Timer1.Enabled = True
MsgBox("今天是:" & Now & t) VB.NET程序设计教程 目录
本章目录
19/51
常见错误和难点分析
(实验指导P35))
• 1、If语句书写问题 • 2、在选择结构中缺少配对的结束语句 • 3、多分支选择 ElseIf关键字的书写和条件 表达式的书写 • 4、 多分支结构
VB.NET程序设计教程
不成立 B
b
VB.NET程序设计教程
目录
5/51
根据条件重复执行语句(称为循环体)
a a
不成立 条件 成立 ? 循环体 b
a 循环体
条件? 成立 b II 、直到型循环结构
目录
不成立
I 、 当型循环结构
VB.NET程序设计教程
6/51
4.2 选择结构
计算机要处理的问题往往是复杂多变的, 仅采用顺序结构是不够的。 必须利用选择结构等来解决实际应用中的 各种问题。 VB中主要通过If条件语句和Select情况语 句来实现。它们都是对条件进行判断,根据 判断结果,选择执行不同的分支。
VB.NET程序设计教程
目录
25/51
4.3 循环结构
计算机最擅长的功能之一就是按规定的条件, 重复执行某些操作。 例如,按照人口某增长率,对人口增长统计; 根据各课程的学分、绩点和学生的成绩,统计 每个学生的平均绩点等。 这类问题都可通过循环结构来方便地实现。 VB中提供了主要的两类循环语句: For循环语句(一般已知循环次数); Do条件型循环语句(一般未知循环次数).
Do „Loop While
30/51
VB.NET程序设计教程
目录
本章目录
第四章总结
• 顺序结构 • 选择结构 • 循环结构 • 其它辅助控制语句 • 程序调试
34/51
VB.NET程序设计教程
目录
4.1 顺序结构
一般程序设计语言中顺序结构的语句主要: 赋值语句和 输入/输出语句等。 在VB.net中 赋值语句 输入/输出通过: 文本框控件、标签控件、 InputBox函数、MsgBox函数 Write方法
VB.NET程序设计教程
目录 本章目录
59/51
4.6.1 错误类型
语法错误、运行时错误和逻辑错误三类。 1.语法错误
错误的代码下显示波浪线,任务 窗口上显示警告信息,鼠标指向 波浪线时,显示出错的原因。
VB.NET程序设计教程
目录
本章目录
60/51
2.运行错误
指令代码执行了一非法操作引起的。例如,类 型不匹配、试图打开一个不存在的文件等。程 序会自动中断,并给出有关的错误信息。
VB.NET程序设计教程
目录
35/51
第四章总结
4.2 选择结构
If…. else select….case
4.3 循环结构
For循环语句、Do…Loop语句
4.4 辅助控制语句:Exit For,Exit Do 4.5 程序调试
36/51
VB.NET程序设计教程
目录
4.4 其他辅助控制语句
VB.NET程序设计教程
目录
本章目录
61/51
3.逻辑错误 程序运行后,得不到所期望的结果,这说明程 序存在逻辑错误。 例如,运算符使用不正确、语句的次序不对、 循环语句的起始、终值不正确等。 通常,逻辑错误不会产生错误提示信息,故错 误较难排除,需要程序员仔细地阅读分析程序, 并具有调试程序的经验。
VB.NET程序设计教程
目录 本章目录
10/51
多分支结构
3. If…Then…ElseIf 语句 If 表达式1 Then 语句块1 ElseIf 表达式பைடு நூலகம் Then 语句块2 表达式 1 … T [Else 语句块 n+1] 语句块 1 End If
F F 表达式 2 T 表达式 n T 语句块 2 语句块 n 语 句 块 n+ 1 F
目录
3/51
4.1 顺序结构
VB具有结构化程序设计的三种程序控制结构, 即顺序结构、选择结构、循环结构,是程序设计 的基础。 (1)顺序结构
各语句按出现的先后次序执行 a A
用传统流程 图表示为
B b
4/51
VB.NET程序设计教程
目录
本章目录
根据条件决定执行的语句
传统流程图: 成立 A a
条件?
例4.10 将可打印的 ASCII码制成表格输出
目录 本章目录
Next 的下一语句
VB.NET程序设计教程
28/51
4.3.2 Do…Loop循环语句
Do循环用于控制循环次数未知的循环结构。
形式1: Do { While|Until }<条件> 语句块 [Exit Do 语句块] Loop 形式2: Do 语句块 [Exit Do 语句块] Loop { While|Until} <条件>
100 4. Is 关系运算符表达式 VB.NET程序设计教程
目录 本章目录
Is < 60
15/51
4.2.3 条件函数
(1) IIf函数
IIf(表达式,表达式为真时的值,表达式为假时的值) IIf函数是If … Then …Else 结构的简洁表示 例如,将x,y中大的数,放入Tmax变量中: Tmax = IIf(x > y,x,y) 该语句与如下语句等价 : If x > y Then Tmax = x Else Tmax = y
IF演示
VB.NET程序设计教程
目录
本章目录
8/51
双分支结构
2. If…Then…Else语句 T F 表达式 If 表达式 Then 语句块1 语句块 1 语句块 2 Else 语句块2 End If 或 If 表达式 Then 语句1 Else 语句2 当表达式的值为True时,执行Then后面的 语句块1,否则执行Else后面的语句块2
4.2.3 条件函数
例 根据Nop的值,得到+、-、×、÷中的某运算符: Op= Choose(Nop,"+","-","×","÷") 例4.8 根据当前日期,显示今日是星期几。
t = Choose(Weekday(Now), “星期日”, “星期一”, “ 星期二”, “星期三”, “星期四”, “星期五”, “星期 六”)
1) 循环次数 Int ( >0 初值<终值 =1 时,可省略 步长 <0 初值>终值 =0 死循环
终值 初值 步长
VB.NET程序设计教程
目录
本章目录
27/51
For循环语句
循环变量=初值 F
循环变量≤终值 T 语句块 有 Exit For F 语句块
T
循环变量=循环变量+步长
循环流程: (1) 循环变量被赋初值,它 仅被赋值一次。 (2) 判断循环变量是否在终 值内,如果是,执行循环体; 如果否,结束循环,执行 Next的下一语句。 (3) 循环变量加步长,转(2), 继续循环
VB.NET程序设计教程
目录 本章目录
7/51
4.2.1 If条件语句
1. If…Then语句(单分支结构) 表达式 If <表达式> Then 语句块(可以是一句或多句语句) T 语句块 End If 或 If <表达式> Then <语句>
F
表达式:关系表达式、逻辑表达式,算术表达式。 表达式值按非零为True,零为False进行判断。 该语句的作用是当表达式的值为True,执行Then后 面的语句块,否则不做任何操作。
Variable Arrays
End Sub
Example:
aver = 0 For i = 1 To 100 mark = InputBox(“输入第" & i & "位学生的成绩") aver = aver + mark Next i 循环结构 aver = aver / 100
VB.NET程序设计教程
VB.NET程序设计教程
目录 本章目录
26/51
4.3.1 For循环语句 i%, sum% Dim
For i = 1 To 100 Step For循环语句用于控制循环次数预知的循环结构。 2 sum = 步长] For 循环变量 =初值 To 终值 [Step sum + i Next i 语句块 MsgBox str(sum) [Exit For] 语句块 例4.9 计算1~100的 Next 循环变量 奇数和 循环变量必须为数值型。
VB.NET程序设计教程
本章目录
目录
43/51
4.6 程序调试
随着程序的复杂性提高,程序中的错误也 伴随而来。 对初学者,看到出现错误不要害怕,关键 是如何改正错误,失败是成功之母。 上机的目的,不光是为了验证你编写的程 序的正确性,还要通过上机调试,学会查找 和纠正错误的方法和能力。
VB为调试程序提供了一组交互的、有效的 调试工具。
VB.NET程序设计教程
目录 本章目录
42/51
4.4.2 退出和结束语句
1.Exit语句 VB中有多种形式的Exit语句,用于退出某种控 制结构的执行。Exit的形式如下: Exit For、Exit Do、 Exit Sub、Exit Function 2.End语句 独立的End语句用于结束一个程序的运行,它 可以放在任何事件过程中。
4.4.1 Go To 语句 无条件地转移到标号或行号指定的那行语句。 Go To {标号|行号} 注意:标号是字符序列,首字符必须为字母,标号后 应有冒号;行号是一个数字序列; 代码说明 例4.14 判断输入的数是否为素数 素数就是除1和本身以外,不能被其他任何整数整除的 数。根据此定义,判别某数m是否为素数最简单的方法 就是依次用i=2~m-1去除,只要有一个数能整除m,m就 不是素数;否则m是素数。 要求一定范围内的素数,只要将m作为外循环体变量。
形式1为先判断后执行,有可能一次也不执行; 形式2为先执行后判断,至少执行一次。
VB.NET程序设计教程
目录 本章目录
29/51
Do…Loop流程
表达式列表 1 T 语句块 有 Exit Do F 语句块 T 表达式列表 1 F T F 语句块 T
有 Exit Do F 语句块
Do While„Loop