【问题标题】:Generate big numbers with srand() in c在 c 中使用 srand() 生成大数
【发布时间】:2015-06-25 04:37:02
【问题描述】:

我想在 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;
}

【问题讨论】:

标签: c random srand


【解决方案1】:

首先,检查RAND_MAXrand() 可以生成的最大值。

您可以将两个rand() 结果组合成一个值。

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-21
    • 2012-06-18
    • 2014-05-01
    相关资源
    最近更新 更多