用c中的srand()生成大数字

时间:2015-04-18 07:18:18

标签: c random srand

我想在c中生成大的随机数。问题是srand()可以生成的最大数量大约是37000.我想在intervall 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;
}

1 个答案:

答案 0 :(得分:4)

首先,检查RAND_MAX是否可以rand()生成的最大值。

您可以将两个rand()结果合并为一个值。

int random = (rand() << 16) | rand();