不用数组?好吧。
楼主大概是想搞个发牌程序?
class Program
{
static void Main(string[] args)
{
List
for (int i = 0; i < 100; i++)
{
numbersToSelect.Add(i);
}
for (int j = 99; j >= 0; j--)
{
Random random = new Random();
// 保证index落在List大小范围之内
int index = random.Next(0, j);
Console.WriteLine("当前输出:{0}", numbersToSelect[index]);
// 每次取完之后Remove掉,这样就不会重复了
numbersToSelect.RemoveAt(index);
}
Console.ReadKey();
}
}
不用数组,可以用集合ArrayList,将产生的每个随机数与保存在集合中的数相比较,如果没有则保存,如果有则另外产生一个再与集合比较.
直到集合的容量为100时则不能再产生任何一个数了.
生成0-100的随即数你会吧.
生成之后,拿生的东西放到一个集合里面.
在次生成的时候则循环集合里面的每个元素.
判断是否重复,如果重复则在生成一个随即数
就可以了
这个还算随机数吗?
比如生成了99个,那剩下的就是必然的了,不是随机数了.随机数不适合用在这儿
Random r = new Random();
int x=r.Next(0, 100);
Console.WriteLine(x);
输出0-100之间的随机数