random函数不是ANSI C标准,不能在gcc,vc等编译器下编译通过。但在C语言中int random(num)能够这样使用,它返回的是0至num-1的一个随机数。

可改用C++下的rand函数来实现。

rand()%n   范围  0~n-1

rand()主要是实现 产生随机数,其它我们在这里能够无视他

显然随意 一个数  rand()%n  范围显然是  0~n-1;

那么 怎样产生 n~m的数呢? 一样的   我们仅仅要对rand()进行一些 符号操作即可了;

n+rand()%(m-n+1);    这样就能够了

这样我们 就仅仅有 种子 和 浮点数的没有分析了,

以下来说rand()的使用方法 ,浮点数的放在最后面讲 :一般在用这个之前 都要  初始化 一个种子 ,可是  你不写的话,系统会给你 一个默认的种子,以下是我们自己输入种子的代码;

int seed;

scanf ("%d",&seed);

srand(seed);

cout<<rand()<<endl;
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[15];
//srand(time(NULL));
int seed;
while(1){
scanf("%d",&seed);
srand(seed);
for (int i=0; i<15; i++)
printf ("%d\t",rand()%10);
printf ("\n");
}
return 0;
}

经过下图的比較发现,每个种子都是保持着这个状态的随机变量值,会存在系统里面;

因此,我们要对这个初始化种子  保持着  时刻不同;也就是说 我们还是用 srand(time(NULL));比較好

用例如以下代码比較合适:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
//int arr[15];
srand(time(NULL));
for (int i=0; i<15; i++)
printf ("%d\t",rand()%10);
printf ("\n");
while (1);
return 0;
}

好了,我们如今讲下最后一点---------浮点数的随机产生

rand()%n   =========== 0~n-1     那么  我们再除以 n  即可了

能够表示为:   (rand()%n)/(n*1.0)      //这里注意下 隐式转换   低------>高

以下给出一个范例:

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
int arr[15];
//srand(time(NULL));
int seed;
while(1){
scanf("%d",&seed);
srand(seed);
for (int i=0; i<15; i++)
printf ("%lf\t",(rand()%10)/10.0);
printf ("\n");
}
return 0;
}

假设要  更精确呢?像0.11  这种呢???   道理是一样的

我们能够输出   (rand()%n)/(n*1.0)+(rand()%n)/(n*10.0);

由此我们能够总结出规律:p 表示精确位数

{  p }

1.......1*(rand()%n)/10^p

C random C ++rand函数应用的更多相关文章

  1. 统计学习方法 | 第1章 统计学习方法概论 | np.random.rand()函数

    np.random.rand()函数 语法: np.random.rand(d0,d1,d2……dn) 注:使用方法与np.random.randn()函数相同 作用: 通过本函数可以返回一个或一组服 ...

  2. RAND函数和SRAND函数

    首先我们要对rand&srand有个总体的看法:srand初始化随机种子,rand产生随机数,下面将详细说明. rand(产生随机数) 表头文件: #include<stdlib.h&g ...

  3. C语言中生产随机数 rand()函数

    参考资料:C语言中产生随机数 一:如果你只要产生随机数而不需要设定范围的话,你只要用rand()就可以了:rand()会返回一随机数值, 范围在0至RAND_MAX 间.RAND_MAX定义在stdl ...

  4. 关于rand()函数 转载于其他人

    C++中的rand()函数 分类: 编程语言/ C#/ 文章 C++中产生随机数种子对于初学者一直都很困惑.大家知道,在C中有专门的srand(N)函数可以轻松实现这一功能,然而在C++中则要复杂一些 ...

  5. np.random的随机数函数

    np.random的随机数函数(1) 函数 说明 rand(d0,d1,..,dn) 根据d0‐dn创建随机数数组,浮点数, [0,1),均匀分布 randn(d0,d1,..,dn) 根据d0‐dn ...

  6. Java中的Random()函数-----转载

    Java中的Random()函数 (2013-01-24 21:01:04) 转载▼ 标签: java random 随机函数 杂谈 分类: Java 今天在做Java练习的时候注意到了Java里面的 ...

  7. sql server 生成随机数 rand函数

    https://docs.microsoft.com/en-us/sql/t-sql/functions/rand-transact-sql?view=sql-server-2017 在某一个区间内生 ...

  8. C語言 rand函数 进阶探讨与实现

    C语言中随机函数应用        可能大家都知道C语言中的随机函数random,但是random函数并非ANSI C标准,所以说.random函数不能在gcc,vc等编译器下编译通过. 那么怎么实现 ...

  9. C++ 制作一个“测运”小游戏-rand()函数的应用

    游戏说明: 游戏名:Lucky Guy 玩法说明:有2种模式可以选择,一种是一直选择数字,直到抽到炸弹为止.另一种是在0~9个数字中进行选择,有5个炸弹,最高分为5,抽到炸弹即游戏结束.游戏结束后,可 ...

随机推荐

  1. 最牛B的编程套路

    最近,我大量阅读了Steve Yegge的文章.其中有一篇叫“Practicing Programming”(练习编程),写成于2005年,读后令我惊讶不已: 与你所相信的恰恰相反,单纯地每天埋头于工 ...

  2. SWT中一些细节的说明

    1.shell.pack();函数的效果是将程序打包,使其以合适的大小显示出来,不会太大有很多多余空间,也不会太小导致有些控件无法显示. 2. while(!shell.isDisposed()){ ...

  3. Extjs4.0.7 实现Grid的嵌套

    网上相关资料非常少,我看过的大多是Extjs 3.0 急以前版本的解决方案. 比如:http://mikhailstadnik.com/ext/examples/nested-grid.htm  (E ...

  4. Allegro绘制PCB流程

    单位换算 1mil = 0.0254 mm 1mm = 39.3701 mil 默认情况下我们更倾向于使用mil单位绘制PCB板. 1 新建工程,File --> New... --> [ ...

  5. 【LaTeX排版】LaTeX论文排版&lt;三&gt;

    A picture is worth a thousand words(一图胜千言).图在论文中的重要性不言而喻,本文主要解说图的制作与插入. 1.图像的插入     图像能够分为两大类:位图和向量图 ...

  6. codeforces55D数位dp

    codeforces55D 查询给定区间内的beautiful number.  一个数字是beautiful number当且仅当能被自己的各个数字不为0的位整除. 这个dp的状态还是挺难想的.一个 ...

  7. Xamarin For Visual Studio 3.7.165 完整离线破解版

    原文 Xamarin For Visual Studio 3.7.165 完整离线破解版 Xamarin For Visual Studio就是原本的Xamarin For Android 以及 Xa ...

  8. Android中目的地Intent的使用

    一.什么是Intent? Intent的中文意思是目的.在Android中也是“目的”的意思.就是我们要去哪里,从这个activity要前往另一个Activity就需要用到Intent. 示例代码一: ...

  9. linux下多进程的调试

    linux下多进程的调试:  (1)follow-fork-mode           set follow-fork-mode [parent | child] ---- fork之后选择调试父进 ...

  10. Android开发工具综述,开发人员必备工具

    安卓开发工具汇总.开发者必备.安卓开发过程中须要用到各种工具,作为一名安卓开发者,有木有感到亚历山大,那么多工具! 今天给大家汇总了一下安卓开发工具,安卓开发者必备利器. 1.Draw 9-Patch ...