当前位置: 首页 > news >正文

【C语言】C语言使用随机数srand,rand

C语言使用随机数srand,rand

可直接编译使用:

#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <unistd.h>

/* 
c语言提供的跟随机数有关的函数:
    int rand(void);
        返回值:产生的随机数
    void srand(unsiqned int seed);
        参数:seed -->随机数种子,rand函数的源码会利用srand提供的种子,配合算法产生随机数
    time t time(time t *tloc);
        返回值:返回当前系统时间距离1970-1-1凌晨的秒数
        参数:保存当前系统时间距离1970-1-1凌晨的秒数 
*/

int main(int argc, char const *argv[])
{
    int buf[4] = {1,5,78,567};
    int ret = 0;
    // 使用srand 传递种子
    srand(time(NULL));

    // 使用rand产生随机数
    while (1)
    {
        // 直接产生的随机数很大
        // printf("直接产生的随机数是:%d\n", rand());
        // 1.随机数控制在0-99范围内
        ret = rand();
        // printf("随机数控制在0-99范围的随机数是:%d\n", ret%100);

        // 2.产生的随机数范围在 55-123之间   123 - 55 =  68
        // printf("产生的随机数范围在 55-123之间的随机数是:%d\n", (ret%68)+55);

        // 3.控制随机数在以上数据中变化 1,5,78,567
        printf("控制随机数在固定数据中变化的随机数是:%d\n", buf[ret%4]);

        sleep(1);
    }

    return 0;
}

相关文章:

  • nacos-actuator漏洞
  • apt 常见报错及解决方法
  • 本地部署 Firecrawl
  • 【nodejs】爬虫路漫漫,关于nodejs的基操
  • CAJ转PDF:复杂的转换背后有哪些挑战?
  • rocky linux yum源配置
  • 图论 | 98. 所有可达路径
  • 机器学习、深度学习解决方案设计方案通用审核流程(solution architect review)
  • 从扩展黎曼泽塔函数构造物质和时空的结构-5
  • 【页面组件】——1
  • 使用DeepSeek进行审稿和反馈审稿意见相关流程和提示词分享
  • 【算法】常见排序算法(插入排序、选择排序、交换排序和归并排序)
  • LLM之RAG理论(十四)| RAG 最佳实践
  • Pi型隶属函数(Π-shaped Membership Function)的详细介绍及python示例
  • 2025年3月 CCF GESP C++ 二级 真题解析
  • 仅靠prompt,Agent难以自救
  • DeepSeek,PowerBI一般有哪些问题?
  • 操作系统导论——第13章 抽象:地址空间
  • 【笔记分享】NCS/Zephyr USB MSC实现方法介绍
  • 每日一题第15届蓝桥杯c/c++本科B组省赛第3题
  • 《中华人民共和国经济史(1949—1978年)》教材出版发行
  • 波兰总统选举第一轮投票结束,出口民调显示将进入第二轮投票
  • 外交部驻港公署正告美政客:威胁恫吓撼动不了中方维护国家安全的决心
  • 国宝文物子弹库帛书二、三卷从美启程,18日凌晨抵京
  • 穆迪下调美国主权信用评级
  • 国寿资产获批参与第三批保险资金长期投资改革试点