首页 > 编程笔记 > C语言函数大全 阅读:212

C语言srand():初始化随机数生成器

通义灵码
srand() 是 C语言的一个标准库函数,定义在<stdlib.h>头文件中。

srand() 函数用于改变随机数生成器的初始状态,通过为随机数生成器设置不同的种子,从而对随机数生成器进行初始化或者重新初始化。

srand() 函数的原型如下:
void srand(unsigned int seed);

参数

seed:随机数生成器的种子值。不同的种子将导致随机数生成器产生不同的随机数序列。

返回值

无,srand() 没有返回值。

通常我们会把当前时间(time(NULL))作为参数 seed 的值,这样做的好处是,每次程序运行时的时间是不同的,由此生成的随机数序列也不相同。

【实例】以下 C语言示例代码演示了 srand() 函数的功能和用法,程序会生成 5 个介于 0 到 99 之间的随机整数,并打印它们。
  1. #include <stdlib.h>
  2. #include <stdio.h>
  3. #include <time.h>
  4.  
  5. int main() {
  6. // 使用当前时间作为随机数生成器的种子
  7. // 每次运行程序时,时间都是不同的,因此随机数序列也将不同
  8. srand(time(NULL));
  9.  
  10. // 生成并打印5个随机整数
  11. for (int i = 0; i < 5; i++) {
  12. int random_number = rand() % 100; // 生成0到99之间的随机整数
  13. printf("%d ", random_number);
  14. }
  15. printf("\n");
  16.  
  17. return 0;
  18. }
在这个示例中,通过调用 srand(time(NULL)),我们设置了随机数生成器的种子为当前时间。由于每次运行程序时当前时间都不同,因此每次运行都会生成不同的随机数序列。如果不调用 srand(),则每次运行程序时都会生成相同的随机数序列。

相关文章