public int[] Ran()
{
int[] a=new int[5];
Random ran = new Random();
for(int i=0;i<5;i++)
{
a[i]=ran.Next(10);
a=aa(a, i, ran);
}
return a;
}public int[] aa(int[] a, int i,Random ran)
{
for (int j = i - 1; j >= 0; j--)
if (a[j] == a[i]) {a[i] = ran.Next(10); aa(a,i,ran);}
return a;
}
有什么不好的地方请大家指出,谢谢!
{
int[] a=new int[5];
Random ran = new Random();
for(int i=0;i<5;i++)
{
a[i]=ran.Next(10);
a=aa(a, i, ran);
}
return a;
}public int[] aa(int[] a, int i,Random ran)
{
for (int j = i - 1; j >= 0; j--)
if (a[j] == a[i]) {a[i] = ran.Next(10); aa(a,i,ran);}
return a;
}
有什么不好的地方请大家指出,谢谢!
这句不要写在里面要写在外面
Random ran = new Random(); 写在里面
那么计算机运算这么快,你可能得到的很多值都是同一个值
也就没起到随机作用。
写在外面可以得到不同的值。
{
int[] a = new int[5];
for (int i = 0; i < 5; i++)
{
a[i] = Rnd.Next(10);
a = aa(a, i);
}
return a;}public int[] aa(int[] a, int i)
{
for (int j = i - 1; j >= 0; j--)
if (a[j] == a[i]) { a[i] = Rnd.Next(10); aa(a, i); }
return a;
}