C stdlib srand() 函数

定义和用法

srand() 函数用种子初始化 rand() 函数。

种子指定了 rand() 函数将遵循的数字序列。这意味着相同的种子总是会产生相同的随机数序列。

srand() 函数定义在 <stdlib.h> 头文件中。

实例

例子 1

显示 10 个介于 1 和 100 之间的随机数字:

// 使用当前时间戳作为种子初始化随机数生成器
// (time() 函数由 <time.h> 头文件提供)
srand(time(NULL));
 
// 生成随机数字
for (int i = 0; i < 10; i++) {
  int num = rand() % 100 + 1;
  printf("%d ", num);
}

亲自试一试

例子 2

两次显示相同的随机数序列:

// 使用固定值初始化随机数生成器
srand(10000);
 
// 生成 5 个随机数字
for (int i = 0; i < 5; i++) {
  int num = rand() % 100 + 1;
  printf("%d ", num);
}
printf("\n");
 
// 使用相同的值再次初始化随机数生成器
srand(10000);
 
// 生成 5 个随机数字
for (int i = 0; i < 5; i++) {
  int num = rand() % 100 + 1;
  printf("%d ", num);
}

亲自试一试

语法

srand(unsigned int seed);

参数

参数 描述
seed 数字,指定 rand() 函数将遵循的数字序列。