![ddd98a916d399647fd45b688ed19b51b.png](https://i-blog.csdnimg.cn/blog_migrate/af11b5a660fca6e67530d67766990e48.jpeg)
如何使用C语言编程,生成指定区间的随机小数?
直接上代码:
#include <stdio.h> //预处理命令,基本的输入输出函数库
#include <stdlib.h>//随机函数rand()所在库
#include <time.h> //库里面时间相关的函数,初始化随机数种子时用到
int main()
{
double num; //保存随机数
double down=0.2,top=2.4;//区间范围
double a[100];
int i; //
srand((unsigned int)time(NULL));//设置当前时间为随机数种子
for(i=0;i<100;i++)
{
num=(double)rand()/RAND_MAX;
//产生0-1之间的随机数,RAND_MAX是生成随机数的最大值
a[i]=down+num*(top-down);
printf("a[%d]=%fn",i,a[i]);
}
return 0;
}
注意:使用rand()函数生成随机数时需要初始化随机数种子,否则是伪随机数。用num=(double)rand()/RAND_MAX;转换成0-1之间的随机数(RAND_MAX是生成随机数的最大值)。然后用 down+num*(top-down) 转换到指定区间即可。