关闭→
当前位置:科普经验站>IT科技>rand函数的使用方法是什么

rand函数的使用方法是什么

科普经验站 人气:3.13W

用c语言产生随机数rand()     在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的

在excel中rand函数的使用方法,步骤加图

方法

选中单元格,往里输入“=rand()”

Rnd(number) 返回一个Single类型的随机数,小于 1 但大于或等于 0 的值 如果 number 的值 小于 0 每次都得到相同的随机数。 大于 0 或省略 产生下一个随机数。 等于 0 返回最近一次生成的随机数。 使用之前最好使用Randomize 例如产生N到M的随机

rand函数的使用方法是什么

输入后按回车

这个我用过,我知道: rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间; rand()%100结果是随机数除以100后所得的余数,即限定随机的范围是在0~99之间; 使用rand()函数需添加头文件:#include 你的二维数组可

rand函数的使用方法是什么 第2张

向右向下复制填充公式,就会得到一系列大于等于0小于1的随机数

要先设置种子,编译器里如果不设置种子,种子会默认为0,那么每次运行的随即数都一样的。用time函数来改变种子,就可以很好的体现出“真正的随即”了。 完整代码: 例子: #include #include #include main(){ int i,a[10]; srand(time(0)); for(i

rand函数的使用方法是什么 第3张

若需要0-5之间的随机数,就要把rand函数返回数值扩大5倍即可。

rand(产生随机数) 表头文件: #include 定义函数 :int rand(void) 函数说明 : 因为rand的内部实现是用线性同余法做的,他不是真的随机数,只不过是因为其周期特别长,所以有一定的范围里可看成是随机的,rand()会返回一随机数值,范围在0至RAND

如图,录入公式=rand()*5

rand函数 函数头文件:stdlib.h 函数定义:int rand(void) 函数功能:产生一个随机数 函数说明: rand函数产生的随机数严格意义讲不是真正的随机数,它里面采用了线性同余法计算出随机数,所谓的线性同语法简单来说就是使用了一个公式。 该方法

rand函数的使用方法是什么 第4张

输入后按回车

这个我用过,我知道: rand()是一个可以生成随机数的函数随机数,函数返回的随机数在0-RAND_MAX(32767)之间; rand()%100结果是随机数除以100后所得的余数,即限定随机的范围是在0~99之间; 使用rand()函数需添加头文件:#include 你的二维数组可

rand函数的使用方法是什么 第5张

并把函数向下向右复制填充,就得到0-5之间的随机实数了。

方法/步骤 如何更改RAND函数输出值的范围。 通常情况下,RAND函数输出结果在0~1之间,如果我们想输入10~100之间的数据,该怎么办?其实我们只需要给RAND函数扩大1000倍即可。如图: 有时,我们更希望RAND输出的结果只保留几位数,对此,我们可以

rand函数的使用方法是什么 第6张

扩展阅读,以下内容您可能还感兴趣。

c语言rand函数的使用

你好!!

    srand((int)time(NULL));// 移到循环的外面

    增加了每次出拳的显示,便于查看

    增加了局数的显示#include<stdlib.h>//为了使用srand、rand函数必须使用该头文件

#include<time.h>//要使用time()必须使用该头文件 

#include<stdio.h>

int main()

{

char in;

//出错,产生的随机数永远一样。 

srand((int)time(NULL));// 移到循环的外面

int a=1; 

do{

int user;            //定义玩家和电脑出拳 

int uwin,ulos,allwin;//定义玩家的胜利参数,失败参数,平局参数 

int cwin,clos,loop;  //定义电脑的胜利参数和失败参数,不需要定义平局参数,可以直接取用allwin 

int computer=0;

uwin=0;

ulos=0;

allwin=0;

cwin=0;

clos=0;

computer = rand()%3+1;    //随机产生1-3任意一个整数,rand()%3是随机产生0-2之间的整数(包含0但不包含3)

printf("n【第 %d 局】n 请出拳:",a);

a++;

scanf("%d",&user);

printf("这一局,您出的是【%d】,电脑出的是【%d】!n",user,computer);

switch(user)

{

case 1:

if(computer==1)

{

printf("这一局,您出的是【石头】,电脑出的是【石头】,好巧哦,是平局耶!n");

allwin+=1; 

}

}

}while(1);

}

rand()函数如何使用

srand函数是随机数发生器的初始化函数,原型:

void srand(unsigned seed);

它需要提供一个种子,如:

srand(1);

直接使用1来初始化种子。

不过常常使用系统时间来初始化,即使用

time函数来获得系统时间,它的返回值为从 00:00:00 GMT, January 1, 1970

到现在所持续的秒数,然后将time_t型数据转化为(unsigned)型在传给srand函数,即:

srand((unsigned) time(&t));

还有一个经常用法,不需要定义time_t型t变量,即:

srand((unsigned) time(NULL));

直接传入一个空指针,因为你的程序中往往并不需要经过参数获得的t数据。

srand((int)getpid());

使用程序的ID(getpid())来作为初始化种子,在同一个程序中这个种子是固定的

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

#include <stdlib.h>

#include <stdio.h>

#include <time.h>

void main( void )

{

int i,k;

srand( (unsigned)time( NULL ) );

for( i = 0; i < 10;i++ )

{

k=rand()%100;

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

}

}

参考资料:http://baike.baidu.com/view/1458234.html?wtp=tt

C++ rand函数怎么用,头文件应包括什么

使用rand函数时头文件应该包括stdlib.h,rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。rand()会返回一个范围在0到RAND_MAX(至少是32767)之间的伪随机数(整数)。

在调用rand()函数之前,可以使用srand()函数设置随机数种子,如果没有设置随机数种子,rand()函数在调用时,自动设计随机数种子为1。随机种子相同,每次产生的随机数也会相同。rand()函数需要的头文件是:<stdlib.h>

rand()函数原型:int rand(void);使用rand()函数产生1-100以内的随机整数:int number1 = rand() % 100+1。

扩展资料:

使用rand()和srand()产生指定范围内的随机整数的方法,“模除+加法”的方法因为,对于任意数,0<=rand()%(n-m+1)<=n-m,因此,0+m<=rand()%(n-m+1)+m<=n-m+m,因此,如要产生[m,n]范围内的随机数num,可用:

int num=rand()%(n-m+1)+m。其中的rand()%(n-m+1)+m算是一个公式,记录一下方便以后查阅。比如产生10~30的随机整数:srand(time(0)),int a = rand() % (21)+10。

vb中,rand()函数什么意思?

Rand(number) 返回一个Single类型的随机数,小于 1 但大于或等于 0 的值.

如果 number 的值 小于 0 每次都得到相同的随机数。 大于 0 或省略 产生下一个随机数。 等于 0 返回最近一次生成的随机数。

使用之前最好使用Randomize 例如产生N到M的随机数,Int(Rand()*M-N+1)+N

vb6.0中没有Rand函数,如写Rand(3)就会出错。

Rand()函数只产生1到10单不包括0和1的随机数默认为单精度数0.0000001—0.9999999(开区间(0,1))。

要产生1-10的随机小数时:

只能不包括1和10:rand*9+1(即1.0000001—9.9999999之间,开区间(1,10))

要是产生1-10的随机整数时:

不包括1和10:int(rand*8)+2(即2—9之间的整数)

包括1和10时:int(rand*10)+1(即1—10之间的整数)

Rand函数和srand函数在keil中怎么用,能给我举个例子吗

srand((unsigned)time(NULL))则使用系统定时/计数器的值作为随机种子。每个种子对应一组根据算法预先生成的随机数,所以,在相同的平台环境下,不同时间产生的随机数会是不同的,相应的,若将srand(unsigned)time(NULL)改为srand(TP)(TP为任一常量),则无论何时运行、运行多少次得到的“随机数”都会是一组固定的序列,因此srand生成的随机数是伪随机数。[1]

库函数中系统提供了两个函数用于产生随机数:srand()和rand()。 原型为:

函数一:int rand(void);

返回一个[0,RAND_MAX]间的随机整数。

函数二:void srand(unsigned seed);

参数seed是rand()的种子,用来初始化rand()的起始值。

但是,要注意的是所谓的“伪随机数”指的并不是假的随机数。其实绝对的随机数只是一种理想状态的随机数,计算机只能生成相对的随机数即伪随机数。计算机生 成的伪随机数既是随机的又是有规律的 —— 一部份遵守一定的规律,一部份则不遵守任何规律。比如“世上没有两片形状完全相同的树叶”,这体现到了事物的特性 —— 差异性;但是每种树的叶子都有近似的形状,这正是事物的共性 —— 规律性。从这个角度讲,我们就可以接受这样的事实了:计算机只能产生伪随机数而不是绝对的随机数。

系统在调用rand()之前都会自动调用srand(),如果用户在rand()之前曾调用过srand()给参数seed指定了一个值,那么 rand()就会将seed的值作为产生伪随机数的初始值;而如果用户在rand()前没有调用过srand(),那么系统默认将1作为伪随机数的初始 值。如果给了一个定值,那么每次rand()产生的随机数序列都是一样的~~

所以为了避免上述情况的发生我们通常用srand((unsigned)time(0))或者srand((unsigned)time(NULL))来 产生种子。如果仍然觉得时间间隔太小,可以在(unsigned)time(0)或者(unsigned)time(NULL)后面乘上某个合适的整数。 例如,srand((unsigned)time(NULL)*10)

另外,关于time_t time(0):time_t被定义为长整型,它返回从1970年1月1日零时零分零秒到目前为止所经过的时间,单位为秒。

srand()、rand()用法举例:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

#include<time.h>

#include<stdlib.h>

#include<stdio.h>

voidmain()

{

inti,j;

srand((int)time(0));

for(i=0;i<10;i++)

{

j=1+(int)(10.0*rand()/(RAND_MAX+1.0));

printf("%d",j);

}

}

TAG标签:#函数 #rand #