回 帖 发 新 帖 刷新版面

主题:谁可以帮我详细的解释一下c语言里函数rand()和srand()的用法

谁可以帮我详细的解释一下c语言里函数rand()和srand()的用法

我不太明白这两个函数~~~~~~~谢谢各位大虾了

回复列表 (共8个回复)

沙发

[font=Tahoma]srand 和 rand 应该组和使用。一般来说,srand 是对 rand 进行设置。比如:
srand((UINT)GetCurrentTime());
int x = rand() % 100;
//生成 0 到 100 之间的随机数。[/font]

板凳

在库文件里找,网上可以下载一下,有所有函数的使用说明,按字母排列的,

3 楼

srand()
是用来初始化随机种子数的,因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,式子如下 rand = rand*const_1 + c_var;srand函数就是给它的第一个rand值。
用 int x = rand() % 100;来生成 0 到 100 之间的随机数这种方法是不或取的,比较好的做法是: j=(int)(n*rand()/(RAND_MAX+1.0))  // 产生一个0到n之间的随机数
今天就讲这么多了,大家有什么再补充,:)

4 楼

   rand(void)用于产生一个伪随机unsigned int 整数。srand(seed)用于给rand()函数设定种子。

5 楼

哦~~~~~原来是这样啊~~~~~太谢谢你们了~~~

终于让我反映过来了
呵呵~~~~!

6 楼

我想请教的一点是:如果用上面lanjingquan兄所说的方法输入随机数,其所需的头文件"stdlib.h"是否得改一改或是把它去掉呢?

7 楼

为什么去掉"stdlib.h"啊?

8 楼

cache2002:你说的库函数哪里有得下载?

我来回复

您尚未登录,请登录后再回复。点此登录或注册