黑马程序员技术交流社区

标题: 学习分享~随机测试数组问题 [打印本页]

作者: 行我福    时间: 2015-1-25 22:58
标题: 学习分享~随机测试数组问题
本帖最后由 行我福 于 2015-1-25 22:58 编辑

测试一个算法的排序,需要输入大量的数据,如果每次测试都是手动输入,会显得比较Low。当然,文件读取的方法也未尝不可,只是,作为测试数据,文件数据写死了,就削弱了测试数据的准确性了,那么,我来分享下一个随机生成的n个整型的数组
生成不重复随机数的程序:
  1. #include <stdlib.h>
  2. int CreateData(int arr[],int n,int min,int max) //创建一个随机数组,a保存生成的数据,n为数组元素的数量
  3. {
  4.     int i,j,flag;
  5.     srand(time(NULL));
  6.     if((max-min+1)<n) return 0; //最大数与最小数之差小于产生数组的数量,生成数据不成功
  7.     for(i=0;i<n;i++)
  8.     {
  9.         do
  10.         {
  11.             arr[i]=(max-min+1)*rand()/(RAND_MAX+1)+min;
  12.             flag=0;
  13.             for(j=0;j<i;j++)
  14.             {
  15.                 if(arr[i]==arr[j])
  16.                     flag=1;
  17.             }
  18.         }while(flag);        
  19.     }
  20.     return 1;
  21. }
复制代码

大家不妨小试下~


作者: alin000    时间: 2015-1-25 23:13
顶!!!!!!!




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2