请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

正在回答

1回答

liuyubobobo 2016-10-28 11:04:02

在计算机中,随机数的生成都是“伪“随机的,也就是说,不是真正的随机数,而是通过一系列固定的规则生成的随机数。运行这一些列规则需要一个启动值。启动值不同,生成的数据也不同。所以使用不同的启动值,可以模拟真实的随机。这个启动值就是随机数的种子。


在C++中(包括很多别的语言中),通常使用时间函数time(NULL)生成随机种子。这是因为在大多数情况下,用户触发随机函数的时间点(精确到毫秒)通常都不同。这样最大程度保证了随机性。


当然,如果对随机要求更高的程序,这样做是不好的。关于随机数,有很多有意思的话题。大多和数学相关。同时,随机数生成算法也是一个专有领域,这些不在我们这个课程的范围里。有兴趣可以搜搜看:)


简单来讲,可以记住这么一个规则:在生成随机数前,需要设定随机数种子,来保证随机性。时间函数返回的时间戳整型值,是一个常用的种子,在大多数普通情况都很好用。

7 回复 有任何疑惑可以回复我~
  • 提问者 人土土zzzzz #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2016-10-28 18:02:17
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信