收藏 分销(赏)

VB教程教案省公共课一等奖全国赛课获奖课件.pptx

上传人:快乐****生活 文档编号:4155028 上传时间:2024-08-05 格式:PPTX 页数:17 大小:461.87KB
下载 相关 举报
VB教程教案省公共课一等奖全国赛课获奖课件.pptx_第1页
第1页 / 共17页
VB教程教案省公共课一等奖全国赛课获奖课件.pptx_第2页
第2页 / 共17页
VB教程教案省公共课一等奖全国赛课获奖课件.pptx_第3页
第3页 / 共17页
VB教程教案省公共课一等奖全国赛课获奖课件.pptx_第4页
第4页 / 共17页
VB教程教案省公共课一等奖全国赛课获奖课件.pptx_第5页
第5页 / 共17页
点击查看更多>>
资源描述

1、主页主页 程序调试是进行程序设计程序调试是进行程序设计基本功之一,也是一个实践性很基本功之一,也是一个实践性很强工作,需要在实践中不停总结强工作,需要在实践中不停总结经验,才能逐步提升自己调试程经验,才能逐步提升自己调试程序能力。序能力。第1页主页主页 程序调试主要任务:查找程序错误和排除错误程序调试主要任务:查找程序错误和排除错误 本章主要内容本章主要内容 第第9 9章章 程序调试与错误处理程序调试与错误处理VB程序中错误类型程序中错误类型程序工作模式程序工作模式程序调试程序调试错误处理错误处理退出退出第2页主页主页 三类错误类型:三类错误类型:编译错误,逻辑错误和运行错误编译错误,逻辑错误

2、和运行错误 1.编译错误编译错误 编译错误是指在程序编译过程中出现错误。通常是因为不编译错误是指在程序编译过程中出现错误。通常是因为不正确书写代码而产生。正确书写代码而产生。如:关键字写错,遗漏标点符号,括号不匹配等。如:关键字写错,遗漏标点符号,括号不匹配等。举例:举例:Foor t=1 To 100 2.运行错误运行错误 运行时错误是指应用程序在运行期间执行了非法操作所发运行时错误是指应用程序在运行期间执行了非法操作所发生错误。生错误。举例举例(“下标越界下标越界”):Dim D(20)As Integer,k As Integer For k=1 To 30 D(k)=k*K Next

3、k9.1 VB9.1 VB程序中错误类型程序中错误类型第3页主页主页 3.逻辑错误逻辑错误 逻辑错误使程序运行时得不到预期结果逻辑错误使程序运行时得不到预期结果。这种程序没有语。这种程序没有语法错误,也能运行,但却得不到正确结果。法错误,也能运行,但却得不到正确结果。比如,在一个算术表示式中,把乘号比如,在一个算术表示式中,把乘号“*”写成了加号写成了加号“+”,条件语句条件写错,循环次数计算错误等,条件语句条件写错,循环次数计算错误等 比如,要求比如,要求10!,若采取:,若采取:Private Sub Form_Load()Dim t As Integer For i=1 To 10 t=

4、t*i Next i Show:Print t End Sub 运行程序时输出结果是运行程序时输出结果是0 通常,调试程序过程中所花大部分时间和精力都在逻辑错误通常,调试程序过程中所花大部分时间和精力都在逻辑错误上上第4页主页主页 三种工作模式:三种工作模式:设计模式、运行模式设计模式、运行模式和和中止模式中止模式 1设计模式设计模式 在设计模式下,能够建立应用程序用户界面,设置控件属性,在设计模式下,能够建立应用程序用户界面,设置控件属性,编写程序代码等编写程序代码等 2.运行模式运行模式 在运行模式下,能够测试程序运行结果,能够与应用程序对话,在运行模式下,能够测试程序运行结果,能够与应用

5、程序对话,还能够还能够 查看程序代码,但不能修改程序查看程序代码,但不能修改程序 3.中止模式中止模式 在中止模式下,能够利用各种调试伎俩检验或更改一些变量或在中止模式下,能够利用各种调试伎俩检验或更改一些变量或表示式值,或者在断点附近单步执行程序,方便发觉错误或更正表示式值,或者在断点附近单步执行程序,方便发觉错误或更正错误错误 9.2 9.2 程序工作模式程序工作模式第5页主页主页 例例9.0在代码窗口中设置断点在代码窗口中设置断点鼠标鼠标单击单击第6页主页主页 程序调试普通包含程序调试普通包含静态检验静态检验和和动态检验动态检验 9.3.1 静态检验与动态检验静态检验与动态检验 静态检验

6、静态检验程序基本方法是程序基本方法是逐行逐句地读程序逐行逐句地读程序,搞清楚每条,搞清楚每条语句作用,预见每条语句和模块执行结果,判断是否与预期结语句作用,预见每条语句和模块执行结果,判断是否与预期结果相一致,这就是静态检验,也称人工检验。果相一致,这就是静态检验,也称人工检验。静态检验无误后,就能够进行更有效静态检验无误后,就能够进行更有效动态检验动态检验。经过上机经过上机调试来发觉错误调试来发觉错误称为动态检验。称为动态检验。动态检验基本方法是动态检验基本方法是输入一组经典数据来运行程序输入一组经典数据来运行程序。程序。程序对这些数据处理结果应是已知,经过运行后实际结果和预想结对这些数据处

7、理结果应是已知,经过运行后实际结果和预想结果相比较,能够判断程序正确性果相比较,能够判断程序正确性 9.39.3 程序调试程序调试第7页主页主页 使用使用“调试调试”菜单或菜单或“调试调试”工具栏工具栏 1切换断点切换断点 “切换断点切换断点”按钮用来设置断点按钮用来设置断点 2.逐语句逐语句 逐条语句执行程序,每执行一条语句后就返回中止模式逐条语句执行程序,每执行一条语句后就返回中止模式 假如执行是过程调用代码假如执行是过程调用代码(如如Call),“逐语句逐语句”操作也会跟踪操作也会跟踪到被调过程中继续一条语句一条语句执行到被调过程中继续一条语句一条语句执行 3.逐过程逐过程 逐过程执行是

8、以整个函数或过程为一个整体,一次执行。逐过逐过程执行是以整个函数或过程为一个整体,一次执行。逐过程与逐语句一样,能够一条语句一条语句地执行代码。把被调用程与逐语句一样,能够一条语句一条语句地执行代码。把被调用函数或过程看成一个语句来对待函数或过程看成一个语句来对待切换断点切换断点 逐过程逐过程 当地窗口当地窗口 监视窗口监视窗口逐语句逐语句 跳出跳出 马上窗口马上窗口 快速监视快速监视9.3.2 9.3.2 使用使用VBVB调试工具调试工具第8页主页主页 4.跳出跳出 单击单击“调试调试”工具栏上工具栏上“跳出跳出”按钮,则按钮,则VB将连续执行完将连续执行完该过程其余部分,返回调用过程下一条

9、语句并回复中止模式该过程其余部分,返回调用过程下一条语句并回复中止模式 5.当地窗口当地窗口 显示当前过程中全部变量和活动窗体全部属性值显示当前过程中全部变量和活动窗体全部属性值 Me代表当前窗体;单击代表当前窗体;单击“+”号或号或“-”号号 6.马上窗口马上窗口 能够检验某个属性或者变量值,也能够对表示式求值,或为能够检验某个属性或者变量值,也能够对表示式求值,或为变量或属性赋值等变量或属性赋值等 7.监视窗口监视窗口 对用户定义表示式进行监视对用户定义表示式进行监视第9页主页主页 例例9.1 运行以下窗体装载事件过程运行以下窗体装载事件过程:Private Sub Form_Load()

10、Private Sub Form_Load()Dim mys As Integer Dim mys As Integer mys=mys=学习学习VBVB程序设计语言程序设计语言 MsgBox mys MsgBox mys End Sub End Sub 运行时系统将弹出一个犯错消息框,其中提醒发生运行时系统将弹出一个犯错消息框,其中提醒发生“类型不类型不匹配匹配”错误。为了检验犯错原因,能够在马上窗口中键入以下命错误。为了检验犯错原因,能够在马上窗口中键入以下命令来检验变量值:令来检验变量值:?mys?mys?是是PrintPrint简写简写 从显示结果能够看出,犯错前变量从显示结果能够看出

11、,犯错前变量mysmys当前值为数值当前值为数值0 0,它是,它是一个整型变量,不能用字符串一个整型变量,不能用字符串 学习学习VBVB程序设计语言程序设计语言 为它赋值,为它赋值,故发生了故发生了“类型不匹配类型不匹配”错误。错误。例例9.1第10页主页主页 对于一些可预见错误,能够利用对于一些可预见错误,能够利用VB错误处理程序捕捉它,错误处理程序捕捉它,对其进行适当处理,并使程序继续执行。这么就能够使开发软对其进行适当处理,并使程序继续执行。这么就能够使开发软件含有更强适应性。件含有更强适应性。9.4.1 错误处理步骤错误处理步骤 (1)利用利用Err对象统计错误类型、犯错原因等。对象统

12、计错误类型、犯错原因等。(2)强制转移到用户自编强制转移到用户自编“错误处理程序段错误处理程序段”入口。入口。(3)在在“错误处理程序段错误处理程序段”内,依据详细错误进行处理,假内,依据详细错误进行处理,假如问题有处理方法,则在处理后返回原程序某处继续执行,不如问题有处理方法,则在处理后返回原程序某处继续执行,不然,停顿程序执行然,停顿程序执行 9.4 9.4 错误处理错误处理第11页主页主页 Err对象是全局性固有对象,用来保留最新运行时错误信息,对象是全局性固有对象,用来保留最新运行时错误信息,其属性由错误生成者设置其属性由错误生成者设置 1.主要属性主要属性 (1)Number属性:属

13、性:数值。数值。范围为范围为065535,保留错误号,保留错误号 (2)Source属性:属性:字符串。字符串。指明错误产生对象或应用程序名称指明错误产生对象或应用程序名称 (3)Description属性:属性:字符串。字符串。用于统计简短错误信息描述用于统计简短错误信息描述 2.惯用方法惯用方法 (1)Clear方法:方法:用于去除用于去除Err对象当前属性值。对象当前属性值。(2)Raise方法:方法:产生错误,用于调试错误处理程序段。产生错误,用于调试错误处理程序段。比如,执行语句比如,执行语句Err.Raise 55将产生将产生55号运行时错误,即号运行时错误,即“文件文件已打开已打

14、开”错误错误 9.4.2 9.4.2 ErrErr对象对象第12页主页主页 使用使用On Error语句能够捕捉错误,其语法格式以下:语句能够捕捉错误,其语法格式以下:On Error 标号标号 通常,该语句放置在过程开始位置。在程序运行过程中,通常,该语句放置在过程开始位置。在程序运行过程中,当该语句后面代码犯错时,则程序就会自动跳转到标号所指定当该语句后面代码犯错时,则程序就会自动跳转到标号所指定程序行去运行程序行去运行 标号所指示程序行通常为错误处理程序段开始行标号所指示程序行通常为错误处理程序段开始行 一个使用错误处理示例:一个使用错误处理示例:On Error GoTo ErrLin

15、e 以后犯错时转移至以后犯错时转移至ErrLine .ErrLine:标号标号 .Resume 返回语句返回语句9.4.3 9.4.3 捕捉错误语句捕捉错误语句(On Error)(On Error)第13页主页主页 当指定错误处理完成后,应该控制程序返回到适当位置继当指定错误处理完成后,应该控制程序返回到适当位置继续执行。续执行。返回语句返回语句Resume有三种使用方法:有三种使用方法:(1)Resume 0:程序返回到犯错语句处继续执行。程序返回到犯错语句处继续执行。(2)Resume Next:程序返回到犯错语句下一语句。程序返回到犯错语句下一语句。(3)Resume 标号:标号:程序

16、返回到标号处继续执行。程序返回到标号处继续执行。9.4.4 9.4.4 退犯错误处理语句退犯错误处理语句(Resume)(Resume)第14页主页主页 错误处理流程错误处理流程主程序主程序On Error GoTo 标号标号 结束结束 对错误进行处理对错误进行处理 Resume错误处理程序段错误处理程序段标号:标号:犯错时转移犯错时转移处理后返回处理后返回 指定位置指定位置 第15页主页主页 输入某个数,求该数平方根。当用户输入负数时,使用输入某个数,求该数平方根。当用户输入负数时,使用On Error.Resume进行处理进行处理 Private Sub Form_Load()Dim x

17、As Single,y As Single,i As String On Error GoTo errln 以下犯错时转移到以下犯错时转移到errln Show:i=i 为实数标识为实数标识 x=Val(InputBox(请输入一个数请输入一个数)y=Sqr(x)x 为负数时会犯错为负数时会犯错 Print y;i:Exit Sub 显示及退出过程显示及退出过程 errln:标号标号 If Err.Number=5 Then 本错误错误码为本错误错误码为5 x=-x 转换为正数转换为正数 i=i 复数标识复数标识 Resume 返回返回 Else 其它错误处理其它错误处理 MsgBox(错误发

18、生在错误发生在&Err.Source&,代码为代码为&_ Err.Number&,即即&Err.Description)End End If End Sub 例例9.39.3 错误处理程序示例错误处理程序示例例例9.3第16页主页主页 程序运行时,当用户输入一个程序运行时,当用户输入一个正数正数时,则显示出该数平时,则显示出该数平方根;假如输入是一个方根;假如输入是一个负数负数,则因求负数平方根,则因求负数平方根(经过函数经过函数Sqr()而犯错,此时会而犯错,此时会跳转到错误处理程序段跳转到错误处理程序段。在错误处理程序段中,先判断错误码,若是在错误处理程序段中,先判断错误码,若是5(即发生求即发生求负数平方根错误负数平方根错误),则将该负数转换为正数,设置复数标识,则将该负数转换为正数,设置复数标识,然后然后执行执行Resume语句返回到原犯错处继续执行语句返回到原犯错处继续执行。假如发生不是错误假如发生不是错误5,则显示相关信息后强制结束,则显示相关信息后强制结束第17页

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服