当前位置: 首页 > 知识库问答 >
问题:

在 c 中使用 srand() 生成大数字

毕浩渺
2023-03-14

我想在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个答案

余歌者
2023-03-14

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

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

int random = (rand() << 16) | rand();
 类似资料:
  • 本文向大家介绍C语言随机数生成教程(rand和srand用法),包括了C语言随机数生成教程(rand和srand用法)的使用技巧和注意事项,需要的朋友参考一下 在实际编程中,我们经常需要生成随机数,例如,贪吃蛇游戏中在随机的位置出现食物,扑克牌游戏中随机发牌。 在C语言中,我们一般使用 <stdlib.h> 头文件中的 rand() 函数来生成随机数,它的用法为: void 表示不需要传递参数。

  • 本文向大家介绍C / C ++中的rand()和srand(),包括了C / C ++中的rand()和srand()的使用技巧和注意事项,需要的朋友参考一下 在本文中,我们将讨论C ++ STL的工作,语法以及示例和函数。 什么啊 rand()函数是C ++ STL中的内置函数,在<cstdlib>头文件中定义。用于生成一系列随机数。当我们想在代码中生成随机数时,可以使用此函数。 就像我们在C

  • 我已经使用BouncyCastle来帮助创建基于RSA的证书,因此接下来的步骤或多或少遵循了创建RSA证书的方法。 (注意,前缀用于来自BouncyCastle的类,用于.NET类) 1生成密钥对:私钥和公钥 如果我可以使用没有私钥的证书,则可以执行以下操作: 我就完蛋了。 当试图设置私钥时会出现问题:

  • 我想使用c生成0-2^64范围内的非常大的随机数。我使用了rand()函数,但它没有生成非常大的数字。任何一个都可以帮助吗?

  • 我喜欢通过摆弄代码来学习,最近我复制并粘贴了一个随机数生成器代码。然后我删除了所有代码行,这些代码行对于生成一个随机数来说是不必要的。最后一根稻草是我删除了srand中的“时间”。 (无符号) 时间(0)); 这里的“时间(0)”是什么意思? 它使用程序打开的时间来生成随机数的种子吗?这就是为什么删除它(时间)会使它不起作用吗?因为它没有种子? 而且 这是整个代码,我注意到它使用“rand”结果进

  • 在BGI库的“graphics.h”头文件中有一个函数pieslice,它的语法是: [x、y为圆心,短角和端角分别为起始角和结束角] 到目前为止我的代码: 我能够完成使用圆的参数方程的计算部分,但无法使用函数生成图形。一些帮助会很好。提前谢谢你。 在运行这个程序时,我得到了这个错误: