0
常见调试技巧
当你遇到一个题目,没有满分通过的时候,你一般会怎么做呢?
- 有些同学会直接问老师,可能就错过了一个很好的学习机会,在这之前不妨先试着自己思考和解决一下。
推荐的方式
- 对错误进行分类:编译错误和答案错误。如果是编译错误,先读懂编译器给出的错误提示(读不懂可以网上搜索或者求助于别人),再去寻找错误。
- 如果是答案错误,往往可能是自己写的代码和自己脑子里的想法不太一致(大多数时候),或者是自己设计出来的算法就有问题(少数时候)
- 先看下样例数据能不能过,或者自己设计一组程序输出和答案不一样的数据。如果实在设计不出来,可以找老师要出错的那一组数据。
- 方式一:将较为简单的一组测试数据代入程序,用纸和笔模拟程序运行,将中间结果记录在纸上。同时也用脑子计算一边,看到底是哪一步开始出问题了。
- 方式二:也可以在代码里增加一些print语句输出中间结果,帮助我们更快了解程序运行到每一关键步骤的状况。同样与人脑计算的结果对比,看看哪一步出问题了。
- 如果自己还是搞不定,可以求助身边一些水平较高的同学,也可以来问老师。
其实我们平时写代码的时候,也可以写一部分,测试一部分。而不是整个代码写完了再去调试,这样往往需要花更多的时间去找出问题。
找一找下面这段代码的问题
题目:http://oj.oldmoon.cn/p/P2240
上一章
递推 下一章
三级