C#产生随机数 不重复(随便什么语言,要方法就行)

来源:百度知道 编辑:UC知道 时间:2024/05/25 09:58:25
Random r = new Random();
int i1 = r.Next(5);
上面的是产生1个,0-5的随机数

但是我现在想要连续产生4个0-5之间的数而且不能重复。请问如何写代码?
int i1,i2,i3,i4;
最好用for循环或者while做
就是首先生成2个数i1和i2,然后比较,如果不一样的话,再产生第三个数i3,当i3 != i1 && i3 && = i2的时候,生成i4,然后i4和前面3个比较。全部不重复以后,弹个对话框。

最好是用这个方法做。
http://zhidao.baidu.com/question/40105328.html

using System;
using System.Collections.Generic;
using System.Text;

namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
int [] arr=new int[6];
int i;
//初始化数组
for(i=1;i<=5;i++)
{
arr[i] = i;
}
//随机数
Random r = new Random();
for (int j = 5; j >= 1; j--)
{
int address = r.Next(1,j);
int tmp = arr[address];
arr[address] = arr[j];
arr[j] = tmp;
}
//输出
foreach (int k in arr)
{
Console.Write(k+" ");
}
}
}
}

Random r = new Random();
int i1 = r.Next(5);
int i2 = r.Next(5);
while (i2 == i1)
{
i2 = r.Next(5);
}
int i3 = r.Next(5);
while (i3 == i2 || i3 == i1)
{
i3 = r.Next