C语言srand():初始化随机数生成器
srand() 是 C语言的一个标准库函数,定义在
srand() 函数用于改变随机数生成器的初始状态,通过为随机数生成器设置不同的种子,从而对随机数生成器进行初始化或者重新初始化。
srand() 函数的原型如下:
通常我们会把当前时间(time(NULL))作为参数 seed 的值,这样做的好处是,每次程序运行时的时间是不同的,由此生成的随机数序列也不相同。
【实例】以下 C语言示例代码演示了 srand() 函数的功能和用法,程序会生成 5 个介于 0 到 99 之间的随机整数,并打印它们。
<stdlib.h>
头文件中。srand() 函数用于改变随机数生成器的初始状态,通过为随机数生成器设置不同的种子,从而对随机数生成器进行初始化或者重新初始化。
srand() 函数的原型如下:
void srand(unsigned int seed);
参数
seed:随机数生成器的种子值。不同的种子将导致随机数生成器产生不同的随机数序列。返回值
无,srand() 没有返回值。通常我们会把当前时间(time(NULL))作为参数 seed 的值,这样做的好处是,每次程序运行时的时间是不同的,由此生成的随机数序列也不相同。
【实例】以下 C语言示例代码演示了 srand() 函数的功能和用法,程序会生成 5 个介于 0 到 99 之间的随机整数,并打印它们。
#include <stdlib.h> #include <stdio.h> #include <time.h> int main() { // 使用当前时间作为随机数生成器的种子 // 每次运行程序时,时间都是不同的,因此随机数序列也将不同 srand(time(NULL)); // 生成并打印5个随机整数 for (int i = 0; i < 5; i++) { int random_number = rand() % 100; // 生成0到99之间的随机整数 printf("%d ", random_number); } printf("\n"); return 0; }在这个示例中,通过调用 srand(time(NULL)),我们设置了随机数生成器的种子为当前时间。由于每次运行程序时当前时间都不同,因此每次运行都会生成不同的随机数序列。如果不调用 srand(),则每次运行程序时都会生成相同的随机数序列。