189 8069 5689

c语言rand函数最大数 c语言rand函数怎么让产生的数不同

c语言rand()函数问题

rand是产生0到RAND_MAX(在stdlib.h中,0x7fff,即32767)之间的数random(number)是产生0到number-1之间的数。

创新互联公司成都网站建设定制网站设计,是成都网站营销公司,为建筑动画提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站设计热线:13518219792

C语言rand函数产生的最大随机数是多少?

最大32767 (2^16-1)。

系统里的随机数是利用初等数论中的同余定理来实现的.

整数rand的原理是:

y=ax+b(mod n)其中,n一般是一个很大的素数,几万。

a也是大素数。而且a,b,n都是常数。所以rand的产生决定于x,

他被称为seed。

每一个seed都是上一次产生的y的函数。这样,如果直接取seed=y的话,

虽然产生的rand之间相关性甚小,但只要知道某个y,就能推知以后的rand。

为避免这种情况,一般取seed为y和当时计算机的时间的函数,如seed=y+t

比如VC中对于rand()函数是如下实现的.

int __cdecl rand (void)

{

return(((holdrand = holdrand * 214013L + 2531011L) 16) 0x7fff);

}

c语言求随机产生的10个数的最大值(要求用函数实现)

#include stdio.h

#include stdlib.h

#include time.h

int main()

{

int n,i,max;

srand(time(NULL));

max = rand();

for(i = 1; i10;i++)

{

n=rand();

if(nmax)max=n;

}

printf("max=%d\n", max);

return 0;

}

c语言随机函数怎么设置最小最大值

你可以看下下面的例子,这个例子最大的随机数就是100

随机输出十个0-100之间的整数

程序例1:

#include stdlib.h /*用到了srand函数,所以要有这个头文件*/

#include stdio.h

#include time.h /*用到了time函数,所以要有这个头文件*/

#define MAX 10

int main( void)

{

int number[MAX] = {0};

int i;

unsigned int seed;

scanf("%d",seed);/*手动输入种子*/

srand(seed);

for(i = 0; i MAX; i++)

{

number[i] = rand() % 100; /*产生100以内的随机整数*/

printf("%d ", number[i]);

}

printf("\n");

return 0;

}


网站题目:c语言rand函数最大数 c语言rand函数怎么让产生的数不同
标题链接:http://cdxtjz.com/article/dodseis.html

其他资讯