C语言初学者求助 关于随机数生成函数int rand(void)的具体用法我只知道int rand(void)可生成一个0至RAND_MAX的随机整数,rand函数与RAND_MAX定义在stdlib.h文件中.如果定义两个浮点数x,y,要生成n个随机点
来源:学生作业帮助网 编辑:作业帮 时间:2024/11/02 23:23:16
C语言初学者求助 关于随机数生成函数int rand(void)的具体用法我只知道int rand(void)可生成一个0至RAND_MAX的随机整数,rand函数与RAND_MAX定义在stdlib.h文件中.如果定义两个浮点数x,y,要生成n个随机点
C语言初学者求助 关于随机数生成函数int rand(void)的具体用法
我只知道int rand(void)可生成一个0至RAND_MAX的随机整数,rand函数与RAND_MAX定义在stdlib.h文件中.如果定义两个浮点数x,y,要生成n个随机点坐标(x,y),而且x,y都在0~1之间,具体要怎么写?
C语言初学者求助 关于随机数生成函数int rand(void)的具体用法我只知道int rand(void)可生成一个0至RAND_MAX的随机整数,rand函数与RAND_MAX定义在stdlib.h文件中.如果定义两个浮点数x,y,要生成n个随机点
#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void main()
{
srand(time(0));//设置随机种子,保证每次运行程序,获取的随机数都不一样
double x,y;//浮点数x,y
int a,b,n,i;//整型a,b用于获取随机整数,n是坐标个数
scanf("%d",&n);//输入n
for(i=0;i<n;i++)
{
a = rand()%101;//把获取的随机数分成101份,即a的值是0,1,……,100
b = rand()%101;//同a
x = a*1.0/100;//转成浮点数
y = b*1.0/100;//同上
printf("(%.2lf %.2lf)\n",x,y);//输出即可
}
}
程序结果如下:
如果你想让得到的x,y的取值是一位小数,可以把程序里的101,100改成11,10即可