int Largest(int list[], int length) { int i,max; for(i = 0; i < (length – 1); i ++ ) { if(list[i] > max) { max=list[i]; } } return max; }
该函数是求词组中最大值
很明显大家都会看到这个函数的一些错误(1)max 没赋初值(2)for函数中的长度不对
进行测试时我们可能只会考虑 9 8 7,2 5 8等一些常规的例子
在实际上我们还要考虑一些特殊的例子如:负数 -4 - 6 -9,有相等的情况 7 2 9 9,只有一个元素情况 8,甚至还要考虑
数组长度为0,数组为空的情况
总之,在测试的时候我们不能只以我们的思想去测试,还要考虑不懂这些的人的想法,
如边界条件,输入不合规定的情况,考虑各种可能的错误。
改正后的代码是
int Largest(int list[], int length) { if(length==0||list==NULL) { printf("输入数组有误!"); return 0; } int i,max=list[0]; for(i = 0; i < length; i ++ ) { if(list[i] > max) { max=list[i]; } } return max; }
二、代码规范
“代码规范”可以分成两个部分
(1)代码风格规范 (2)代码设计规范
代码规范注重以下几点
原文:http://www.cnblogs.com/lan-meng/p/3580262.html