c语言随机数函数 c语言随机数函数random
c语言随机数函数是什么?
srand -- 设随机种子函数
c语言随机数函数 c语言随机数函数random
c语言随机数函数 c语言随机数函数random
rand -- 取随机数函数。值 是 RAND_MAX。rand 产生的是均匀分布的伪随机数。
例如,产生10个 1-30 间 的 随机 浮点数:
#include
#include
#include
#include
void main()
{long int i,y;
double x, r, M = 30.0;
srand((unsigned)time(NULL));
for (i=0;i<10;i++){
r = ( (double)rand() / ((double)(RAND_MAX)+(double)(1)) );
x = (r M);
//y = (long int) x;
printf("%lfn",x);
//printf("%dn",y);
};
}
random() ,随机生成一个整数。
rand() 返回一个随机整数。
c语言产生随机数的函数
在c语言中要产生随机数可以用rand函数。
默认情况下这个函数产生的随机整数的范围是[0,RAND_MAX]。
RAND_MAX是一个预定义的宏,其值等于平台上int类型的值。
可以使用如下公式来产生一个[min,max]之间的随机整数:
rand()%(max-min+1)+min
下面这个例子可以产生10个[1,100]的随机数,并输出了它们:
#include
#include
#include
int main()
{int i;
//初始化随机数种子
srand(time(NULL));
//printf("%d
for(i=0;i<10;i++)
printf("%d
return 0;
}下面是运行结果的截图:
C语言随机函数怎么弄
就像是楼上写的
通常随机函数rand()
带有时间种子的随机函数srand(time(0))在用rand()实现。
记住加相关头文件
好像是,rand();
C语言 随机函数
i++就是i+1呀。rand()%100+1是取随机数后再加1(避免得到0),比如随机得到45,得到的结果是46。取3000内随机数就是rand()%3000
i++都不知道,c你白学了
i++ 是i自加1
rand()是取随机数方法 百分号是取余数方法
要取1到300的随机数 那就取余数300
rand()%300+1
c语言随机数函数是什么?
可以的。
代码示例如下:
#include
#include
int main ()
{int a;
a=rand()%4;
printf("%d
return 0;
}拓展资料
功 能 :伪随机数发生器
所属库:stdlib.h
用 法 :需要先调用srand初始化,一般用当前日历时间初始化随机数种子,这样每行代码都可以产生不同的随机数。
函数原型:int rand(void);
rand(产生随机数)
相关函数
srand
表头文件
#include
定义函数
int rand(void)
函数说明
rand()会返回一随机数值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。关于随机数种子请参考srand()。
返回值
返回0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h,其值为2147483647。
范例
/ 产生介于1 到10 间的随机数值,此范例未设随机数种子,完整的随机数产生请参考
srand()/
#include
main()
{int i,j;
for(i=0;i<10;i++)
{j=1+(int)(10.0rand()/(RAND_MAX+1.0));
printf("%d ",j);
}}
执行
9 4 8 8 10 2 4 8 3 6
9 4 8 8 10 2 4 8 3 6
srand(设置随机数种子)
相关函数
rand
表头文件
#include
定义函数
void srand (unsigned int seed);
函数说明
srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。
返回值
范例
/ 产生介于1 到10 间的随机数值,此范例与执行结果可与rand()参照/
#include
#include
main()
{int i,j;
srand((int)time(0));
for(i=0;i<10;i++)
{j=1+(int)(10.0rand()/(RAND_MAX+1.0));
printf(" %d ",j);
}}
执行
5 8 8 8 10 2 10 8 9 9
2 9 7 4 10 3 2 10 8 7
#include
#include
#include
void
main()
{int
i;
srand((unsigned)time(NULL));
i=
rand()
%100;
}这样产生的随机数就是0-99之间的,
这二个函数的工作过程如下:
1)
首先给srand()提供一个种子,它是一个unsigned
int类型,其取值范围从0~65535;
2)
然后调用rand(),它会根据提供给srand()的种子值返回一个随机数(在0到32767之间)
3)
根据需要多次调用rand(),从而不间断地得到新的随机数;
4)
无论什么时候,都可以给srand()提供一个新的种子,从而进一步“随机化”rand()的输出结果。
#include
#include
#include
int main()
{srand(time(NULL));
for(int i = 0; i < 4; printf("%dn",rand() % 4 + 1), i++);
return 0;
}
#include "stdio.h"
#include "stdlib.h"
#include "time.h"
void main()
{int i=10;
srand(time(NULL));
while (i--)
{printf("%dn",rand()%4+1);
}}
程序源码及运行结果如下所示(系统会自动去掉句首空格,排版较乱请见谅):
#include