目录:

  • 什么是随机数?
    • 设置种子产生随机数
  • 案列分析

什么是随机数?

我们知道在C语言中,rand()函数可以用来产生随机数,但是这不是真真意义上的随机数,是一个伪随机数,是根据一个数,我们可以称它为种子,为基准以某个递推公式推算出来的一系数,当这系列数很大的时候,就符合正态公布,从而相当于产生了随机数,但这不是真正的随机数,当计算机正常开机后,这个种子的值是定了的,除非你破坏了系统,为了改变这个种子的值,C提供了srand()函数,它的原形是void srand( int a)

设置种子产生随机数

由于计算机没有办法产生真正的随机数的,是用算法模拟,所以你只调用rand,每次算出来的东西是一样的。设置一个种子后,根据种子的不同,就可以产生不同的数了。


Srand是种下随机种子数,你每回种下的种子不一样,用Rand得到的随机数就不一样。为了每回种下一个不一样的种子,所以就选用Time(0),Time(0)是得到当前时时间值(因为每时每刻时间是不一样的了)。简单来说:
srand()是给随机数产生一个种子
time(NULL)就是把当前的时间值作为种子
srand(time(0)):我们可以称它为启动种子,也叫随机种子数,

案列分析

一般用for语句来设置种子的个数,我们还可以用算数运算符来控制rand()随机数的大小,比如想的到0-1之间的随机数,1-100之间的随机数等等
实现0-1之间的随机数:

#include <stdlib.h>
#include <stdio.h>
#include <time.h>
int main()
{int i;srand((unsigned)time(NULL));for (i = 0; i < 10; i++)printf("%4.2f\n", rand() / 32767.0);
}


实现0-100之间的随机数,这个在我们猜数字的时候用过:

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


实现0-32767之间的随机数:

#include <stdlib.h>
#include <stdio.h>
#include <time.h>
void main()
{int i;srand(time(0));/* 输出 10 个随机数. */for (i = 0; i < 10; i++)printf("%6d\n", rand());
}

srand(time(0))函数的用法介绍相关推荐

  1. patindex函数的用法介绍

    /*关于patindex函数的用法介绍.编写人:Hopewell,日期:2006/08/26*/ patindex函数的用法. 语法格式:PATINDEX ( '%pattern%' , expres ...

  2. python中字符串函数的用法_python中字符串内置函数的用法介绍(代码)

    本篇文章给大家带来的内容是关于python中字符串内置函数的用法介绍(代码) ,有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. capitalize() 首字母大写a='somewor ...

  3. C语言中fscanf()函数的用法介绍

    C语言中fscanf()函数的用法介绍 fscan()函数的原型: int fscanf(FILE *stream,const char *format,[argument...]); fscanf函 ...

  4. mysql+case_mysql内置函数case用法介绍

    本节内容: mysql内置函数case使用介绍 mysql对case函数的解释: 复制代码 代码示例: mysql> ? case Many help items for your reques ...

  5. php error log 函数,php日志函数error_log如何使用 php日志函数error_log用法介绍

    php日志函数error_log如何使用?这篇文章主要介绍了php日志函数error_log用法,结合实例形式分析了php日志函数error_log相关的配置文件设置.函数功能.用法与使用注意事项,需 ...

  6. rand()函数和 srand()函数的用法

    一.rand() rand()函数需要的头文件是:<stdlib.h> rand()函数原型:int rand(void); rand()函数用来产生随机数,它会返回一个从0到最大随机数的 ...

  7. 重点函数 | SELECTEDVALUE 用法介绍

    大家好,今天给大家分享一下SELECTEDVALUE函数的用法,先来看一下函数的说明: SELECTEDVALUE ( Table[column] )SELECTEDVALUE ( Table[col ...

  8. matlab与geotiff影像的函数,用法介绍

    文章目录 前言 一.matlab和geotiff相关函数的学习 (1) pix2latlon() 和latlon2pix() (2) pix2map() 和 map2pix() (3) projfwd ...

  9. C++中assert函数的用法介绍

    assert宏的原型定义在<assert.h>中,其作用是如果它的条件返回错误,则终止程序执行,原型定义: #inclide<assert.h> void assert(int ...

最新文章

  1. Azure中centos7设置时间为上海时间
  2. ListView 与 它里面的Item 点击滑动冲突
  3. 第五章 面向方面编程___AOP入门
  4. MySQL索引使用详解
  5. 到达一个数 Reach a Number
  6. Python编程基础05:运算符与表达式
  7. bzoj 2850 巧克力王国 —— K-D树
  8. 意境级讲解二分查找算法、python
  9. MySQL 中的日期时间类型
  10. 一篇文章彻底搞清楚Windows系统批处理脚本.bat文件的注释
  11. JAVA基于UDP的一个聊天程序
  12. 手机浏览器打不开php,php 判断是否是手机浏览器访问?
  13. Microsoft OneNote - 图片文字提取
  14. java8 Stream分组求和reducing分组求最大值
  15. 配置Hadoop格式化namenode时报错cannot create directory /usr/local/hadoop/tmp/dfs/name/current
  16. python游戏编程培训
  17. Android Studio的代码笔记--基本使用、新建一个项目、修改快捷键、常用控件的使用等
  18. mysql乘法_mysql乘法
  19. 鸿蒙系统可以安装的浏览器,华为鸿蒙系统2.0如何进行安装?鸿蒙系统2.0安装方法详细介绍...
  20. Idea 中的 Git 操作看这一篇就够了(最全的讲解,文章比较长,截图比较多是为了说明问题)

热门文章

  1. 事件冒泡详解及阻止事件冒泡
  2. python集合增加元素_python集合的新增元素方法整理
  3. rand和srand的用法
  4. Office基础操作:Word 使用交叉引用的超链接后,如何一步操作返回至引用处
  5. 数说故事车企数字化渠道管理创新方法——精准进行消费者洞察
  6. matlab之ma q 模型,matlab之ARMA(p,q)模型
  7. 《JavaEE初阶》HTTP协议和HTTPS
  8. Win10远程桌面出现身份验证错误,由于CredSSP加密Oracle修正 解决方法
  9. Linux上安装dos2unix
  10. 如何用真实图案填充图片?