我想在 c 语言中生成大的随机数。问题是 srand() 可以生成的最大数字约为 37000。我想在 70000 到 2150000000 之间创建一个数字。谁能帮我解决这个问题。
随机数生成器:
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
int main ()
{
srand(time(NULL));
int i;
for (i=0; i<50; i++)
{
int random = rand();
printf("%d\n",random);
}
return 0;
}
最佳答案
首先,检查RAND_MAX
以获取rand()
可以生成的最大值。
您可以将两个 rand()
结果组合成一个值。
int random = (rand() << 16) | rand();
关于c - 在 c 中使用 srand() 生成大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29714238/