程序调试与例题讲解.pptxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
补充:程序调试与例题讲解程序调试一、 Visual Basic 的错误类型1.语法错误(Syntax Error):由于违反了语言有关语句形式或使用规则而产生的错误,产生编译错误。如拼写错误,关键字遗漏,标点不符或中文字符,括号不匹配,遗漏end if等错误。VB6.0提供自动语法检查功能,并以高亮度红色出现。例:Foor i=1 to 100 或 t=“dfdfadf” p=t “dfsaf”例:遗漏next j ,类似的情况还有遗漏括号,遗漏end if,end sub等 for i=1 to 100 for j=1 to 300 …….. next i2.运行错误(Run Time Error):指应用程序在运行期间执行了非法操作所导致的错误。如除0、文件或文件夹不存在、磁盘未插入软驱等。VB将弹出一个子窗口,提示出错信息。该类错误仅能在程序运行时发现例:下标越界Private sub form_load() dim d (20) as integer, k as integer for k=1 to 30 d(k)=k*k next kEnd sub3.逻辑错误(Logic Error):程序的运行结果与预期不一致。由于算法不正确,变量使用错误或程序控制结构不当都会产生逻辑错误。这种错误是致命的,不容易发现,也难以排除。 VB的调试工具正是用来帮助程序员发现程序中的逻辑错误。例:在一个算术表达式中,把乘号“*”写成加号“+”;条件语句的条件写错,如“”写成“”;循环次数计算错误,多一次或少一次循环。Private sub form_load() dim k as integer for i=1 to 30 k=K*i next I show print kEnd sub程序运行输出结果为0同城,调试程序过程所花的大部分时间都在逻辑错误上。二、 调试工具及其功能 使用VB的调试工具,可便捷有效地检查逻辑错误产生的地点和原因。调试工具栏中的各个按钮的功能 VB提供了三种调试窗口用于了解程序运行时变量和界面的变化。 “本地”窗口,显示当前过程中所有局部变量的值,以及窗体的属性值。使用时代码中必须有断点,或在中断模式运行。 “监视”窗口,显示指定的监视表达式的值,这些表达式是在“添加监视”窗口中加入的。该窗口可在“调试”菜单中打开。 “立即”窗口,显示代码中正在调试的语句所产生的信息,如Debug.Print的结果。也可以得到直接键入命令所产生的结果。三、程序调试的基本方法 1. 设置断点:在设计模式时的“代码”窗口中,在需要设置或取消断点的那一行鼠标左键即可。当程序运行到句,就暂停执行,自动进入中断模式。2. 在三种调试窗口:(1)直接观察表达式的值(2)用Debug.Print语句把调试信息直接输出到立即窗口.(3)在立即窗口中输入指令(每次一行),用Print显示表达式的值.3. 单步调试:采用F8键逐条语句跟踪,或Shift+F8逐过程跟踪,查看代码的具体执行情况。例1:for 循环变量的确定Option Base 1Private Sub Command1_Click() Dim a s = 1 a = Array(10, 20, 30) For j = 1 To a(j + 1) Step s s = 2 k = 1 k = k * j Next j Print j; kEnd Sub运行结果为 11,10 例2:正整数序列重排,规则:奇数在序列左边,偶数在右边,排列时,奇数偶数依次从序列两端向序列中间排放。例如原来为71,52,58,29,31,78,2,77,82,71重排为71,29,31,77,71,82,2,78,58,54.调试下列程序错误。For i = 1 To 10 If a(i) Mod 2 = 0 Then b(j) = a(i) j = j + 1 Else b(k) = a(i) k = k + 1 End If Next i For i = 1 To 10 Picture2.Print b(i); Next i End SubOption ExplicitOption Base 1Private Sub Command1_Click() Dim a(10) As Integer, i As Integer Dim j As Integer Dim b(10) As Integer, k As Integer For i = 1 To 10 a(i) = Int(Rnd * 100) + 1 Picture1.Print a(i); Next I j = 1: k = 5 例3:直接插入排序排序过程:先将第1个数看成是一个有序子数列,然后从第2个数开始,逐个进行插入,直至整个数

文档评论(0)

liudao + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档