生成100个不相同的随机数 并输出 求解!!
生成100个不相同的随机数 并输出 求解!!生成100个不相同的随机数 并输出 求解!!
生成100个不相同的随机数 并输出 求解!!
用控制台写 --------------------编程问答-------------------- random().next(0,80000); --------------------编程问答--------------------
static int[] CreateNumbers(int[] range, int count)
{
int[] result = new int[count];
Random random = new Random();
int index = 0;
int temp = 0;
for (int i = 0; i < count; i++)
{
index = random.Next() % (range.Length - i);
result[i] = range[index];
//将当前已使用过的数移至集合末尾,并且将末尾原来没有使用的数放到当前位置
temp = range[range.Length - 1 - i];
range[range.Length - 1 - i] = range[index];
range[index] = temp;
}
return result;
}
调用
--------------------编程问答-------------------- Random random=new Random();
int[] range = new int[1000];
for (int i = 0; i < 1000; i++)//初始化范围集合,从1到33
{
range[i] = i + 1;
}
int[] result = CreateNumbers(range, 100);
for (int i = 0; i < result.Length; i++)
{
Console.WriteLine("result[{0}]={1}", i, result[i]);
}
for(int i=0;i<100;i++)
{
int number=random.Next(100);
Console.WriteLine(number);
} --------------------编程问答-------------------- Random random=new Random();
for(int i=0;i<100;i++)
{
int number=random.Next(100);
Console.WriteLine(number);
}
返回数不够 --------------------编程问答-------------------- ArrayList a = new ArrayList();
Random rnm = new Random();
while (a.Count < 100)
{
int m = rnm.Next(0, 100);
if (!a.Contains(m)) a.Add(m);
}
foreach (int item in a)
{
Console.WriteLine(item);
} --------------------编程问答-------------------- 用random应该可以的。 --------------------编程问答--------------------
List<int> listn = new List<int>();
while (listn.Count < 100)
{
Random dn = new Random();
int j = dn.Next(1, 100);
if (listn.Contains(j))
{
listn.Add(j);
}
}
foreach (int ist in listn)
{
Console.WriteLine(ist);
}
Console.Read();
补充:.NET技术 , C#