C语言中怎样生成随机数?

兄弟姐妹在线求帮请教下,C语言中怎样生成随机数?
最新回答
蔓草离离

2024-10-15 05:16:06

C语言中生成随机数主要依赖于`srand()`和`rand()`这两个函数。`srand()`函数的作用是设定随机数生成的基数,通常需要一个动态变化的种子值,以确保每次产生的随机数不同。如果不使用`srand()`,只依赖`rand()`,虽然简单,但随机数的生成将受到初始种子值的限制,可能产生固定的序列。

例如,如果你想要生成0到60之间的随机整数,可以直接使用`rand() % 60`,这会返回一个0到59的随机数。为了保证每次运行程序时都得到不同的随机数,最好在使用`rand()`之前设置一个随机的种子,例如:`srand((unsigned)time(NULL))`,这里的`time(NULL)`会获取当前系统时间作为种子,确保每次程序运行时随机数序列不同。这样,完整的代码段将如下所示:
c
int i;
srand((unsigned)time(NULL));
i = rand() % 60;