在C中生成范围内的随机数?

期望在C中制作一个非常简单的随机数生成器方法。数字应该在0到24之间,并且可以是例如14.5f。

任何帮助都会很棒,谢谢!

float getRand() { float rnd = rand(); rnd /= RAND_MAX; return rnd * 24.0f; } 

确保在使用前使用srand为随机数生成器播种。

Mersenne_twister不仅非常简单,而且非常强大。

请参阅链接上的代码。

但是,如果您可以使用GPL许可证 ,请使用GNU科学库(GSL)特定检查随机数生成器 – 手册中随机数生成的部分 示例

那里有很多东西,从简单的统一随机数到其他分布。

看看线性同余生成器 ,即使我的数学知识较差,它们也很容易实现。

看起来我误解了原来的问题,我以为你想要推出自己的发电机(做作业,好玩等)

您可以使用C的内置随机数生成器来获得0到3万之间的整数,如下所示:

  `函数srand(时间(NULL));
     int x = rand();` 

您只需要进行一些除法以获得十进制数而不是整数。