rand 订阅
rand,既表示美国兰德公司,同时也是C语言的一个函数名,或者是南非的货币名称,此外,在GSM通信中它也是一个随机数。美国兰德公司是美国最重要的以军事为主的综合性战略研究机构。 展开全文
rand,既表示美国兰德公司,同时也是C语言的一个函数名,或者是南非的货币名称,此外,在GSM通信中它也是一个随机数。美国兰德公司是美国最重要的以军事为主的综合性战略研究机构。
信息
货币名称
南非的货币名称
函数名
C语言的一个函数名
中文名
rand
公    司
美国兰德公司
rand货币名称
南非兰特Rand(兰特),符号:R,国际标志:ZAR,1 Rand (R) = 100 centsISO 在南非通用的货币是兰特(Rand),兰特的标记符号为R,100分为1兰特ZAR,南非货币兰特的国际化英文缩写。截止2010年12月14日,1 Rand 等于 0.9768人民币
收起全文
精华内容
下载资源
问答
  • rand

    2014-01-29 10:11:00
    rand(产生随机数)  相关函数  srand  表头文件  #include  定义函数  int rand(void)  函数说明  rand()会返回一随机数值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好...
    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    int main()
    {
    	int i;
    	srand(time(NULL));
    	for(i = 0; i < 100; i++)
    	printf("%d\t",rand() % 10);
    	return 0;
    }

    rand(产生随机数) 
    相关函数 
    srand 

    表头文件 
    #include<stdlib.h> 

    定义函数 
    int rand(void) 

    函数说明 
    rand()会返回一随机数值,范围在0至RAND_MAX 间。在调用此函数产生随机数前,必须先利用srand()设好随机数种子,如果未设随机数种子,rand()在调用时会自动设随机数种子为1。关于随机数种子请参考srand()。 

    返回值 
    返回0至RAND_MAX之间的随机数值,RAND_MAX定义在stdlib.h,其值为2147483647。 

    范例 
    /* 产生介于1 到10 间的随机数值,此范例未设随机数种子,完整的随机数产生请参考 
    srand()*/ 
    #include<stdlib.h> 
    main() 

    int i,j; 
    for(i=0;i<10;i++) 

    j=1+(int)(10.0*rand()/(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<stdlib.h> 

    定义函数 
    void srand (unsigned int seed); 

    函数说明 
    srand()用来设置rand()产生随机数时的随机数种子。参数seed必须是个整数,通常可以利用geypid()或time(0)的返回值来当做seed。如果每次seed都设相同值,rand()所产生的随机数值每次就会一样。 

    返回值 

    范例 
    /* 产生介于1 到10 间的随机数值,此范例与执行结果可与rand()参照*/ 
    #include<time.h> 
    #include<stdlib.h> 
    main() 

    int i,j; 
    srand((int)time(0)); 
    for(i=0;i<10;i++) 

    j=1+(int)(10.0*rand()/(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



    rand() % 10 产生 0 ~9的数字

    展开全文
  • c语言中rand()函数的用法笔记

    万次阅读 多人点赞 2017-03-28 21:32:34
    rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。 rand()会返回一个范围在0到RAND_MAX(至少是32767...

    最近在学着用c写一些小程序,过程中遇到很多问题,在网上查很多大神的讲解,以及查阅vs2010的帮助文档。在此做个笔记,以便今后查阅,备忘。感谢无私奉献讲解的大神们!

    一、rand()

    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;

    二、srand()

    srand()函数需要的头文件仍然是:<stdlib.h>

    srand()函数原型:void srand (usigned int seed);

    srand()用来设置rand()产生随机数时的随机数种子。参数seed是整数,通常可以利用time(0)或getpid(0)的返回值作为seed。

    使用rand()和srand()产生1-100以内的随机整数:

        srand(time(0));

        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;

    另附参考链接:https://blog.csdn.net/cmm0401/article/details/54599083

     

    展开全文
  • C语言之随机数函数( rand() )的使用方法

    万次阅读 多人点赞 2018-04-25 19:49:18
    在程序设计中,难免会使用到随机值函数,其原理与语法大多类似,接下来以C语言为例介绍其随机值函数 rand() 用法。 原理 引用百度百科,首先,需要包含头文件: #include &amp;lt;stdlib.h&amp;gt; ...

    文章出自个人博客https://knightyun.github.io/2018/04/25/c-rand-number,转载请申明。


    在程序设计中,难免会使用到随机值函数,其原理与语法大多类似,接下来以C语言为例介绍其随机值函数 rand() 用法。

    原理

    引用百度百科,首先,需要包含头文件:

    #include <stdlib.h>
    

    rand()函数是按指定的顺序来产生整数,因此每次执行上面的语句都打印相同的两个值,所以说C语言的随机并不是真正意义上的随机,有时候也叫伪随机数,使用 rand() 生成随机数之前需要用随机发生器的初始化函数 srand(unsigned seed)(也位于 stdlib.h 中) 进行伪随机数序列初始化,seed 又叫随机种子,通俗讲就是,如果每次提供的 seed 是一样的话,最后每一轮生成的几个随机值也都是一样的,因此叫伪随机数,所以需要每次提供不同的 seed 达到完全的随机,我们通常用时间函数 time(NULL) 作为 seed ,因为时间值每秒都不同,这个函数需要包含以下头文件:

    #include <time.h>
    

    理论太泛,下面用例子分析理解。

    举例分析

    先来理解以下伪随机数,编译以下代码:

    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    int main()
    {
        srand(1);
        int i;
        for (i = 0; i < 10; i++)
        printf("%d, ", rand()%11); 
    } 

    运行结果

    8, 9, 9, 1, 7, 5, 5, 10, 1, 0,
    

    然后无论运行多少次,结果都依然是以上随机数,不会改变,因为每次设置的种子 seed 都是 1

    但是假如把 seed 换成 time(NULL),每次就不一样了,如下:

    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    int main()
    {
        srand(time(NULL));
        int i;
        for (i = 0; i < 10; i++)
        printf("%d, ", rand()%11); 
    } 

    结果是就变了,并且每次都不一样:

    6, 3, 4, 5, 5, 9, 8, 10, 10, 4,
    6, 4, 2, 4, 3, 2, 5, 1, 2, 9,
    

    这里的 time(NULL) 的结果是一个类似于 1524655706 的数字,并且每秒都在递增 1,也就达成了 srand() 的 seed 不断变化的目的,不断生成新的随机数。

    拓展

    这里注意一下例子中函数 rand() 的用法,函数括号内不需要加参数,如果直接调用 rand() 的话会生成下面这样的数:

    17163, 2663, 24810, 4875, 26975, 14119, 22193, 11233, 26009, 20105,
    

    所以我们想要生成指定范围的随机数的话就需要使用到求余运算符 %,这里有个规律:例如我们需要 0–10的随机数时,就写成 rand()%11,0–100就写成 rand()%101,就是运算符后的数字需要比需求范围极值大 1,当然这也是取余运算的原理。


    技术文章推送

    手机、电脑实用软件分享



    展开全文
  • //使用Rand5()实现Rand3() int Rand3() { int x; do { x = Rand5(); } while (x >= 3); return x; } //利用Rand3编写Rand5怎么办? int Rand5() { int x; do { x = Rand3() * 3 + ...
    //使用Rand5()实现Rand3()   
    int Rand3()  
    {  
        int x;  
        do  
        {  
            x = Rand5();  
        } while (x >= 3);  
        return x;  
    }  
      
    //利用Rand3编写Rand5怎么办?   
    int Rand5()  
    {  
        int x;  
        do  
        {  
            x = Rand3() * 3 + Rand3();  
        } while (x >= 5);  
        return x;  
    }   
      
    //如果要求利用Rand5编写Rand7怎么办?   
    int Rand7()  
    {  
        int x;  
        do  
        {  
            x = Rand5() * 5 + Rand5();  
        } while (x >= 21);  
        return x % 7;  
    }
    

    PS:不会证明。。。

    展开全文
  • Matlab rand()函数用法

    万次阅读 多人点赞 2018-05-11 10:30:06
    rand函数产生由在(0, 1)之间均匀分布的随机数组成的数组。本人遇到的是matlab中的rand(a,b)语句,为了清楚这个语句的用法,这里我们随便输入a,b,例如1和4回车之后结果为如图所示4个数字,可以看到这4个数均为1...
  • 这种题要分两步,第一步是“插空儿”,第二步是“筛” 1.rand7生成rand10 只要是10的倍数就好 int rand10() { int num; do{ num = (rand7() - 1) * 7 + rand7() - 1; } while(num &gt;= 40); retu...
  • rand5 rand7

    2016-09-22 21:06:40
    今天公司有一个面试题是这样的:假如有一个函数rand5能等概率生成1 - 5 之间的整数,如何利用rand5来实现rand7?rand7函数的要求是能够等概率生成1 - 7之间的整数。说实话我自己也不是很清楚。 这个问题很经典的...
  • Rust的随机数库如rand/rand_core/rand_chacha等均使用了同一代码库:https://github.com/rust-random/rand/ 其中包含了多个库: 1)rand_core:Core traits and error types of the rand library, plus tools for ...
  • 使用rand6实现rand10

    千次阅读 2019-04-24 17:24:14
    给定rand6()函数实现 private static int rand6(){ return (int)(Math.random()*6)+1; } rand6()可以得到1,2,3,4,5,6 rand6()-1可以得到0,1,2,3,4,5 (rand6()-1)*6可以得到0,6,12,18,24,30 ...
  • rand()与RAND_MAX

    2020-12-15 13:46:47
    rand()产生一个0到0x7ffff即0到32767之间的随机数 RAND_MAX即为0x7ffff。 所以rand()/RAND_MAX可表示为在[0,1]区间内的随机数 rand()/(RAND_MAX+1)可表示为在[0,1)区间内的随机数 例: 实现(0,10)之间的随机数 ...
  • C语言中的rand()函数

    万次阅读 多人点赞 2018-04-29 10:14:58
    rand函数界限:stdlib.h头文件中有宏#define RAND_MAX 0x7fff rand产生一个0-0x7fff的随机数,即最大是32767的一个数rand函数原型#include &lt;stdlib.h&gt;int rand(void);rand函数调用rand()函数每次调用...
  • srand rand RAND_MAX

    2017-06-06 20:53:55
    stdlib.h头文件中有宏#define RAND_MAX 0x7fff rand()产生一个0到0x7ffff即0到32767之间的随机数 rand()/(RAND_MAX+1.0)就等于一个0到1之间的小数了,因为rand()最大是32767最小是0,再除以32768就是一个0到1之间的...
  • go rand

    2019-10-29 10:34:22
    默认的rand生成的是伪随机数 rand.Intn () 函数是个伪随机函数,不管运行多少次都只会返回同样的随机数,因为它默认的资源就是单一值,所以必须调用 rand.Seed (), 并且传入一个变化的值作为参数,如 time.Now()....
  • rand函数

    千次阅读 2018-05-18 21:58:56
    一、rand()rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由于周期较长,因此在一定范围内可以看成是随机的。rand()会返回一个范围在0到RAND_MAX(32767)之间的伪随机数...
  • rand1() 生成rand5() rand1 可以随机返回0和1, 所以,想让其生成等概率的0-5的数字 先需要让其生成等概率的一组数(0-n) 然后再用这一组数来取模生成0-5 int rand1() { return rand() % 2; } //由于rand1 ...
  • rand5()得到rand3()或rand7()

    千次阅读 2020-04-05 00:42:15
    其实原理都差不多,先将rand5()映射到一个比较大的区间,如扩大n倍,映射到[1,5*n],然后找一个子空间[1,3*m](对于rand7就是[1,7*m]),要求3*m/5*n的值尽可能接近1; 产生一个[1,5*n]的随机数,若其位于[1,3*m]中...
  • openssl rand

    千次阅读 2018-04-16 16:31:00
    用途:生成随机数语法:openssl rand [-out file] [-rand file(s)] [-base64] [-hex] num参数说明:-out :指定随机数输出文件,否则输出到标准输出。-rand file :指定随机数种子文件。种子文件中的字符越随机,...
  • mt_randrand函数使用

    2019-03-26 19:05:18
    项目中遇到一个问题就是需要将一个可变的数组进行轮询。 虽然可以实现想要的功能,数组里面的数据轮流筛选出来,但是由于功能需要,是将数组写入了缓存。...mt_rand() 用法跟rand()类似,但是mt_rand()的...
  • Excel的RAND函数主要是用来产生大于或等于0且小于1的随机数。本文介绍 Microsoft Excel中RAND函数的公式语法和用法。RAND函数功能返回大于等于0及小于1的均匀分布随机数,每次计算工作表时都将返回一个新的数值。RAND...
  • rand5表示生成随机数1,2,3,4,5 rand7表示生成随机数1,2,3,4,5,6,7 要通过rand5构造rand7现在可能没有什么思路,我们先试着用rand7生成rand5 rand7生成rand5很简单,把6和7排除掉就是rand5了,也就是当随机到大于5...
  • Java实现 LeetCode 470 用 Rand7() 实现 Rand10()

    万次阅读 多人点赞 2020-03-18 18:27:01
    470. 用 Rand7() 实现 Rand10() 已有方法 rand7 可生成 1 到 7 范围内的均匀随机整数,试写一个方法 rand10 生成 1 到 10 范围内的均匀随机整数。 不要使用系统的 Math.random() 方法。 示例 1: 输入: 1 输出: [7] ...
  • rand随机数

    2017-05-30 16:19:52
    概述利用Linux库函数获取随机数...参数seed获取随机数的种子(依赖)函数rand函数原型int rand(void);参数无返回值随机数数值[0, RAND_MAX]测试代码int main(void) { printf("RAND_MAX = %d\r\n",RAND_MAX); srand(ti
  • rand3()求rand5()

    2020-08-14 16:41:39
    rand3() [1,3] rand5[1,5] public int rand5() { int row = rand3(); do { int idx = (rand3() - 1) * 5; } while (idx >= 10); return idx % 5 + 1; }
  • matlab rand函数

    万次阅读 多人点赞 2014-09-04 23:26:36
    Y = rand(n) Y = rand(m,n) Y = rand([m n]) Y = rand(m,n,p,...) Y = rand([m n p...]) Y = rand(size(A)) rand s = rand('state') 描述 rand函数产生由在(0, 1)之间均匀分布的随机数组成的数组。 Y = rand(n) 返
  • PHP函数rand和mt_rand mt_rand() 比rand() 快四倍 很多老的 libc 的随机数发生器具有一些不确定和未知的特性而且很慢。PHP 的 rand() 函数默认使用 libc 随机数发生器。mt_rand() 函数是非正式用来替换它的。该...
  • SQL中rand和order by rand()用法

    千次阅读 2019-07-29 16:37:11
    rand 调用rand函数可以产生随机数介于0和1之间的一个数 例如: select rand() 结果: 0.228907625842181 当给rand一个参数的时候,会将改参数作为一个随机种子,生成一个介于0-1之间的一个数 例如: select rand(1)...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 39,343
精华内容 15,737
关键字:

rand