c语言里 random函数怎么实现的

他是怎么从随机数里随意选的一个数,想知道他实现的过程,
2024-11-08 06:39:38
推荐回答(3个)
回答1:

  1. rand函数是根据一个数(我们可以称它为种子)为基准,以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,

  2. 但这产生的并不是真意正义上的随机数,是一个伪随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值。

  3. 种子相同,产生的随机序列相同。这样做的好处是,方便我们产生一组固定的随机序列,用来调试程序。

  4. C提供了srand()函数,用来设置种子,它的原形是void srand( int a)。

  5. 在调用rand函数产生随机数前,应该先利用srand()设好随机数种子,如果未设随机数种子,默认种子为1。

回答2:

用的是伪随机算法,由第一个种子数开始算,种子一样,输出序列就一样。

回答3:

都是已经封装好的函数