随机数函数的原理是什么

随机数函数的原理是什么

  • 生成随机数种子

void srandom (unsigned int seed);
功能:srandom设置产生一系列伪随机数发生器的起始点,一般常用时间作为起始点。
     生成随机数种子。
参数:
@seed  随机数产生器的初始值(种子值)。
  • 生成随机数函数

long int random();
功能:会随机生成一个位于 0 ~ RAND_MAX 之间的整数。
RAND_MAX 是 <stdlib.h> 头文件中的一个宏,它用来指明 rand() 所能返回的随机数的最大值。
不同的系统RAND_MAX的值不同。linux中它的值非常的大,大于是 16 * ((2^31) -1)。

不大明白随机数函数的原理是什么?为什么在调用random()之前先要调用一下srandom()产生一个种子?什么是随机数种子?种子跟产生的随机数有啥关系

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
山行老师 2022-08-28 00:29:16

原因是因为用函数random( )给出随机数是需要依赖一个随机种子的;

如果种子不变,那么得到的随机数就不变,这个是随机数内部算法决定;

不用太纠结这个哈,只需要记住调用random()之前先要调用一下srandom()即可。

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师