当前位置:文档之家› 调试与错误处理

调试与错误处理

调试与错误处理
调试与错误处理

第9章调试与错误处理

一、问答题

1.请思考如何避免错误。

答:1)事先精心设计应用程序,描述清楚相关事件以及代码响应每一事件的方法,为每一事件过程和每个普通过程都指定一个特点的、明确的目标。

2)多加注释。如果用注释说明每个过程的目的,在以后分析代码时,能更深入地理解这些代码。

3)对过程中用到的每个变量或对象都应该在过程开始部分加以定义。

4)在应用程序中对变量和对象提出一种前后一致的命名方案。

2.请简要设计错误处理程序的三个步骤。

答:1)捕获错误,并强制程序跳转

2)编写错误处理程序

3)退出错误处理程序

3.简述常用的程序调试技巧。

答:1)事先做好备份;

2)分离受怀疑的程序;

3)缩小搜索范围;

4)使用MsgBox语句。

4.简要说明VB程序调试的主要方法和工具。

答:VB 程序调试的主要方法:用编译器提示错误;使用调试工具来发现和改正错误;采用常用的调试技巧,如事先做好备份,分离受怀疑的程序,缩小搜索范围,使用MsgBox语句等。

主要工具:“调试”菜单下的“逐语句”、“逐过程”、“跳出”、“运行到光标处”、“添加监视”、“快速监视”、“切换断点”等子菜单项。

5.VB程序错误大体可分为哪几种,它们的含义是什么?

答:VB程序错误大体分为三种:编译错误、实时错误和语法错误。

编译错误是在编写程序时书写了有错误的语法的代码,导致VB编译器无法正确解释源代码而产生的错误,也称语法错误。实时错误是指在运行期间,一跳语句试图执行一条不可能执行的操作而产生的错误,也称运行时错误。逻辑错误是指程序的运行结果和程序员的设想有出入时产生的错误。

6.请说明On Error GoTo 与On Error Resume Next 的区别。

答:On Error GoTo 行标识符语句:当发生错误时,使用该语句强制改变程序的执行方向。而On Error Resume Next 语句:当发生错误时,VB程序将忽略引发错误的语句,并继续执行下一条语句。

二、程序设计题

1.程序改错。以前面学到的冒泡排序算法为例,开发以下程序,请上机练习排除其中的错误。

调试结果:

Private Sub Command1_Click()

Dim A(1 To 20) As Integer

Dim c, j As Integer

Dim T As String

'随机生成一组数据

For c = 1 To 20

A(c) = Int(Rnd * 100)

Next c

'排序

For c = 1 To 20

For j = c + 1 To 20

If A(c) > A(j) Then

T = A(j)

A(j) = A(c)

A(c) = T '将原来的A(j) = T修改为A(c)=T

End If

Next

Next

'在窗体上输出结果

Cls

For c = 1 To 20

Print A(c) ' 将原来的Print A(i)修改为Print A(c)

Next c

End Sub

2.错误处理。按下图设计一除法程序,请使用On Error GoTo 语句对除法程序进行处理,当出现除数为0或其他异常情况时,使用MsgBox提示错误信息。

程序代码:

Private Sub Command1_Click()

On Error GoTo ErrLB

Text3.Text = Trim(Str(Val(Text1.Text) / Val(Text2.Text)))

Exit Sub

ErrLB:

Dim strMsg As String

strMsg = "运算过程出现了如下错误:" + vbCr

strMsg = strMsg + "错误号是:" + Trim(Str(Err.Number)) + vbCr strMsg = strMsg + "错误描述是:" + Err.Description

MsgBox strMsg, vbQuestion + vbOKOnly, "错误提示"

Text2.SetFocus

End Sub

Private Sub Command2_Click()

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

End Sub

相关主题
文本预览
相关文档 最新文档