c# 从一组数中随机抽取一定个数_c#中怎么将一堆数字中,随机出一个

。net。Frameword中提供了一个专门产生随机数的类System。Random,此类默认情况下已被导入,编程过程中可以直接使用。我们知道,计算机并不能产生完全随机的数字,它生成的数字被称为伪随机数,它是以相同的概率从一组有限的数字中选取的,所选的数字并不具有完全的随机性,但就实用而言,其随机程度已经足够了。

可以用以下两种方法初始化一个随机数发生器;函数是这样用,比如100至999的随机数Randomran=newRandom();intRandKey=ran。Next(100,999);不过这样会有重复,可以给Random一个系统时间做为参数,以此产生随机数,就不会重复了第一种方法不指定随机种子,系统自动选取当前时前作随机种子:Randomra=newRandom();第二种方法是指定一个int型的参数作为随机种子:intiSeed=6;Randomra=newRandom(iSeed);下面我们要用到Random。

Next()方法产生随机数。ra。Next();它返回一个大于或等于零而小于2,147,483,647的数,这并不满足我们的需要,下面我们介绍它的重载函数和其它一些方法。publicvirtualintNext(int);用法:ra。next(20)返回一个小于所指定最大值(此处为20)的正随机数。

publicvirtualintNext(intminValue,intmaxValue);用法:ra。next(1,20)返回一个指定范围内(此处为1-20之间)的随机数,我们在下面的实例中会用到此函数。类System。Random还有几个方法分别是:公共方法:NextBytes用随机数填充指定字节数组的元素。

NextDouble返回一个介于0。0和1。0之间的随机数。受保护的方法:Sample返回一个介于0。0和1。0之间的随机数,只允许子类对象访问。以上介绍了随机数的基本用法,下面我们用一个实例来做更进一步的介绍。要在一段数字区间内随机生成若干个互不相同的随机数,比如在从1到20间随机生成6个互不相同的整数。

主要是下面两个函数getRandomNum与getNum:publicint[]getRandomNum(intnum,intminValue,intmaxValue){Randomra=newRandom(unchecked((int)DateTime。

Now。Ticks));int[]arrNum=newint[num];inttmp=0;for(inti=0;i。

全部

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值