程序的调试技巧

代码能力是我们在程序设计竞赛中常常谈到的一种能力,是指选手把算法用代码准确地实现的能力。
在代码能力不够强的时候,就需要有足够的调试(debug)能力了。
在开始 debug 之前,要先在脑海中过一遍思路,必须保证自己有一个清晰的算法思路。一定要有清晰的思路,不然写出来的代码可能连自己都看不懂。

(1) 顺着你的思路仔细阅读自己的代码两到三遍,注意是仔细,要一句一句地读。核对你的代码和你的思路是否一致,不要放过任何一个小细节。如果遇到拿不准的地方,立刻停下来仔细想想,直到想清楚以后再继续。在这个过程中,往往可以找到很多低级错误,尤其是对于代码能力不太好的同学,比如——变量打错、代码写错位置、变量赋值错误等等。静态阅读代码的效率是非常高的,因为往往读一份自己写出的代码的时间远小于写的时间——既然都已经花了那么多时间写出来了,何必还在乎这点时间多读几遍呢。
(2) 如果经过上面的过程还没有找到程序中的错误,或者找到了一些问题但是程序的结果还是不对,这时我们就要通过运行程序来 debug。第一步是需要拿到一组能使得程序出错的数据,拿到错误数据以后,debug 就成功了一半。在造错误数据时,一定要静下心来耐心出,不要指望一下就能造出错误数据。根据错误数据,输出一些重要的中间变量的值,然后观察是否和预期一样。通常是根据经验,觉得哪块容易出错就重点输出哪一块的变量。
经验之谈
定义数组用常量,比题目约定的数据范围稍微大一点。比如数据范围是 1≤n≤10000,则开一个 10000+10 的数组会比较稳妥,因为你也许后来心血来潮让下标从 1 开始计数。

发布了8 篇原创文章 · 获赞 0 · 访问量 30

猜你喜欢

转载自blog.csdn.net/weixin_43755257/article/details/105012132