一、概述
C++中用来产生随机数的函数为rand(),其返回值为整数。要产生 0 − 1 0-1 0−1之间的浮点数,可通过如下方式进行:
生成一个0~N的随机数,然后对其除以N+1取余数,则可以得到浮点型随机数。N可以确定产生的精度。比如需要2位小数,则N=99,需要3位小数,则N=999。如下代码,生成 [ 0.0 1.0 ] [0.0~1.0] [0.0 1.0]的随机数。
二、代码
#include <iostream>
#include <stdlib.h>
using namespace std;
int main(int argc, char* argv[])
{
srand(time(nullptr));//设置随机数种子,使每次产生的随机序列不同
for (size_t i = 0; i < 10; i++)
{
double R = rand() % (101) / double(100);
cout << R << endl;
}
return 0;
三、结果
0.43
0
0.76
0
0.19
0.96
0.44
0.41
0.69
0.57