求测试程序一个(非常急)

来源:百度知道 编辑:UC知道 时间:2024/05/29 04:16:48
原程序如下
void Order(float* a,int size)
{
int x;
int y;
float temp;//替换变量
if(a==null||size<0) printf(“error~!”);
for(y=0;y<size-1;y++)
for(x=1;x<size-y;x++)
if(*(a+x)>*(a+x-1))
{
temp=*(a+x-1);
*(a+x-1)=*(a+x);
*(a+x)=temp;
}
}
要求编写测试程序
很简单的一个冒泡排序

这是一道笔试题,就要求写出测试程序。。

针对这个函数,测试程序的编写其实就是测试数据的编写.你要保证你的测试数据用例能够覆盖所有的分支(很多时候是做不到的,尽量吧^_^).我能想到的用例如下:
1.a为一个空指针.
2.a不为空,但是size<=0.
3.a有n个元素,但是size!=n.
4.a有n个元素,但是size=n.
5.我的想象力到此了!!
然后按照一楼的方式,针对每个用例编写调用程序,抛出相应的结果就可以了.
给分了!!

#define NULL "\0"
main()
{
float a[10]={5,45,4,43,2,1,3,6,9,0,};
int size=10,i;
Order(a,size);
for (i=0;i<size;i++)
printf("%f\t",a[i]);
}

我教你个很简单的测试方法,不用软件,
直接在TC里面按F7一步的运行。。。。结果不用我说了。。。
你还可以添加监视变量,随时查看变量的变化!!!

愕然

在电脑上的有关网站找找

服了!

就是让你加个 main()函数而已,传递指定的参数给这个函数,以察看结果是否符合预期....