当前位置: C语言 -- 标准库 -- <stdlib.h> -- srand

srand函数


概要:
#include <stdlib.h>
void srand(unsigned int seed);

描述:

该函数使用参数seed作为新的伪随机数序列的种子,伪随机数将由后续调用rand函数返回。如果参数seed值相同,后续调用srand函数会生成相同的伪随机数序列。如果调用srand函数前调用rand函数,得到的伪随机数与调用srand(1)后调用rand函数相同。

如果每次执行程序都要求得到不同的伪随机数序列,则每次应该使用不同的seed值。一般情况下,使用当前时间可以满足这种要求,例如:srand(time(0))

该函数不需要避免与其它伪随机序列生成函数的调用发生数据竞争。实现应像没有库函数调用srand函数一样。


参数:
unsigned int seed

一个无符号整数,用作种子。


返回值:

无。


范例:
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
11 
12 
13 
14 
15 
16 
/*函数srand范例*/

#include <stdio.h>
#include <stdlib.h>

int main(void)
{
    printf("First random number: %d\n", rand());
    srand(1);
    printf("Second random number: %d\n", rand());
    srand(100);
    printf("Third random number: %d\n", rand());

    return 0;
}


输出:

First random number: 41

Second random number: 41

Third random number: 365


相关内容:
rand 生成伪随机整数的函数。
RAND_MAX 表示最大伪随机整数的宏。