本文主要介绍2个函数:rand()和srand();

1.rand()函数

是产生随机数的一个随机函数:

#include <stdlib.h>int rand(void);

return value:

为一个随机数值,范围咋0至RAND_MAX之间(定义在stdlib.h,如下)

/* The largest number rand will return (same as INT_MAX).  */

#define RAND_MAX        2147483647

/*******************************************
*  @FileName    :       rand.c
*  @Description :       产生1到255的随机数
*  @Editor      :       tobiu
*  @Date        :       2018-04-06 13:38
********************************************/#include<stdio.h>
#include<stdlib.h>int main(void)
{int i = 0;printf("[%d %s %s] rand : ",__LINE__,__FUNCTION__,__FILE__);for(i=0;i<10;i++){   printf("%d ",rand()%254+1);//%254对数取余就会生成0-254的数值,+1数值就会加1,最终生成的范围是:1-255.}   printf("\n");return 0;
}

结果:

随机数每次生成一样的,原因:未设置seed。在调用该函数之前,必须先利用srand()设好随机数种子。如果未设置随机数种子,rand()在调用时会自动设随机数种子为1,导致生成的随机数每次运行的结果是相同的;

2.srand()函数

随机数发生器的初始化函数。

#include <stdlib.h>void srand(unsined int seed);

seed必须是个整数,通常可以利用geypid或time(NULL)的返回值当做seed。如果每次seed都设相同值,那么rand所产生的随机数值都是一样的。

/*******************************************
*  @FileName    :       rand.c
*  @Description :       产生1到255的随机数
*  @Editor      :       tobiu
*  @Date        :       2018-04-06 13:38
********************************************/#include<stdio.h>
#include<stdlib.h>
#include <time.h>int main(void)
{int i = 0;srand((unsigned int)time(NULL)); printf("[%d %s %s] rand : ",__LINE__,__FUNCTION__,__FILE__);for(i=0;i<10;i++){   printf("%d ",rand()%254+1);}   printf("\n");return 0;
}

Linux C语言生成随机数相关推荐

  1. Linux 文件安全之随机数生成器

    Linux 文件安全之随机数生成器 笔者:李晓辉 数据安全这一话题,在如今这个时代,哪里都在喊,但是我们每天都能看到由于数据安全不到位,造成多少多少损失,说实话,谁也不能保证数据的绝对安全,只有相对的 ...

  2. 随机数生成器c语言,句子随机生成器-怎么用C语言生成随机数

    为随机数生成器初始化一个种子值在易语言中使用什么命令名 置随机数种子 () '调用格式: 〈无返回值〉 置随机数种子 ([整数型 欲置入的种子数值]) - 系统核心支持库->算术运算 英文名称: ...

  3. C语言生成随机数和随机数组

    C语言生成随机数和随机数组 time函数要包含头文件<time.h> rand函数要包含头文件<stdlib.h> 随机数 int a; srand((unsigned)tim ...

  4. C语言生成随机数问题

    C语言生成随机数问题 rand函数 srand函数 时间戳和time()函数 最终代码: rand函数 rand - C++ Reference (cplusplus.com) rand()函数是专门 ...

  5. Linux Shell 生成随机数和随机字符串

    日常生活中,会经常用到随机数,使用场景非常广泛,例如买彩票.丢骰子.抽签.年会抽奖等. Shell 下如何生成随机数呢,米扑博客特意写了本文,总结 Linux Shell 产生随机数的多种方法. 本文 ...

  6. Linux下生成随机数与字符串

    日常生活中,会经常用到随机数,使用场景非常广泛,例如买彩票.丢骰子.抽签.年会抽奖等. Shell 下如何生成随机数呢,米扑博客特意写了本文,总结 Linux Shell 产生随机数的多种方法. 本文 ...

  7. linux 命令行随机数,Linux系统产生随机数的6种方法

    Linux系统产生随机数的6种方法 1.通过系统环境变量($RANDOM)产生随机数 [root@localhost ~]# echo $RANDOM 3849 [root@localhost ~]# ...

  8. c语言rand函数生成随机数,详解C语言生成随机数rand函数的用法

    说到rand函数,大家是不是会和EXCEL中的rand函数混淆,当小编第一次接触的时候也以为是EXCEL的函数,本文是爱站技术频道小编为大家带来的详解C语言生成随机数rand函数的用法,一起来看看吧! ...

  9. R语言生成随机数与统计分布函数

    R语言生成随机数与统计分布函数 常见的分布函数有正态分布.二项分布.F分布.几何分布等等,在R语言中可以使用help("Distrinction")命令来查看所有分布的列表 随机数 ...

最新文章

  1. MFC-4简单的窗口重绘(非部分重绘)
  2. 博士毕业论文悲情致谢女友回应:学术是一场超越金钱的修行。
  3. 从零开始入门 K8s | K8s 的应用编排与管理
  4. c多线程并发处理方式_ElasticSearch 并发的处理方式:锁和版本控制
  5. python导入txt文件并绘图-Python实现读取txt文件中的数据并绘制出图形操作示例
  6. 三星超过台积电 成为全球市值最高半导体公司
  7. Docker容器间通讯,直接路由方式实现网络通讯
  8. iphone解锁_有人可以用解锁的iPhone做的最糟糕的事情是什么?
  9. 列表排序应用FLIP动画(vue)
  10. git-下载与安装windows版本与linux版本
  11. 雪城大学信息安全讲义 4.3~4.4
  12. Atitit 设计模式的本质思考】
  13. paip.自适应网页设计 跟 响应式 设计方法与工具补充(2)o54
  14. 3dsmax2020软件安装教程
  15. 《尚硅谷最新版JavaScript基础全套教程完整版(140集实战教学,JS从入门到精通)》视频1
  16. oppo手机linux模式,OPPO工程模式怎么进 OPPO手机指令有哪些
  17. 【地球科学】常用的地理投影坐标系介绍(笔记)
  18. Codeforces Round #521 (Div. 3) E. Thematic Contests
  19. vue 路由地址不跳转 解决办法
  20. 常见的服务器类型有哪些?

热门文章

  1. 嵌入式属于人工智能吗?
  2. 【锐捷无线】边缘感知配置
  3. 源代码应该怎么理解?
  4. 给自己的爱机T470p装上4g模块
  5. 计算机基本配置总价,2019年4月最新高性价比电脑主机配置清单,按着配绝对不会坑!...
  6. 微信分销系统的功能优势
  7. MessagePack简介与在Python中使用msgpack
  8. 基于at89c51单片机的led数字倒计时器设计c语言,at89c51单片机led数字倒计时器课程设计论文-本科毕业设计.doc...
  9. webService接口对接医院lis系统接口
  10. YOLO9000, Better, Faster, Stronger论文翻译——中文版