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

c 语言, 随机数,一个不像随机数的随机数

c 语言, 随机数,一个不像随机数的随机数

使用两种方式获取随机数,总感觉使用比例的那个不太像随机数。

  • 方法一: rand() 获取一个随机数,计算这个随机数跟最大可能值 RAND_MAX(定义在 stdlib.h 中)的比例数值,再用需要的范围 100 跟这个相乘,得到一个随机数;
  • 方法二:直接用 rand() % 100 取余。

下面是两种方法获取到的 100 个数值:

#include "stdio.h"
#include "stdlib.h"
#include "time.h"int get_random_within(double max){float ratio = rand()/(double)RAND_MAX;return (int)(max * ratio);
}int main(){time_t t;srand(time(&t));printf("time is %lu", t);printf("\n\nuse random ratio to RAND_MAX to get random values: \n");for (int i=0;i<100; i++){if (i> 0 && i % 10 == 0){printf("\n");}int temp = get_random_within(100);if (temp < 10){printf(" %d ", temp);} else {printf("%d ", temp);}}printf("\n\nuse %% to get random values: \n");for (int i=0;i<100; i++){if (i > 0 && i % 10 == 0){printf("\n");}int temp = rand() % 100;if (temp < 10){printf(" %d ", temp);} else {printf("%d ", temp);}}printf("\n");return(0);
}

结果

在这里插入图片描述

http://www.lryc.cn/news/269171.html

相关文章:

  • Git三种方法从远程仓库拉取指定分支
  • 7.6分割回文串(LC131-M)
  • stata回归结果输出中,R方和F值到底是用来干嘛的?
  • Windows搭建RTMP视频流服务(Nginx服务器版)
  • IP地址SSL证书
  • 关于“Python”的核心知识点整理大全49
  • 爬虫学习(1)--requests模块的使用
  • 【Vue2 + ElementUI】el-table中校验表单
  • PgSQL技术内幕 - ereport ERROR跳转机制
  • 【验证概括 SV的数据类型_2023.12.18】
  • 如何在无公网IP环境下远程访问Serv-U FTP服务器共享文件
  • 电子工程师如何接私活赚外快?
  • 数据库进阶教学——读写分离(Mycat1.6+Ubuntu22.04主+Win10从)
  • MidJourney笔记(9)-daily_theme-docs-describe
  • 鸿蒙 - arkTs:网络请求封装和使用
  • 多功能演示工具ProVideoPlayer2 mac特色介绍
  • java设计模式学习之【责任链模式】
  • docker 安装可视化工具 Protainer 以及 汉化
  • 【SpringBoot篇】详解Bean的管理(获取bean,bean的作用域,第三方bean)
  • 彭涛:2023年终复盘,工作,团队,个人!
  • 【数据结构和算法】---二叉树(2)--堆的实现和应用
  • 【大模型实践】基于文心一言的对话模型设计
  • 聊聊PowerJob的StoreStrategy
  • HTML+CSS+JS网页设计期末课程大作业 web课程设计 web前端开发 网页规划与设计
  • vscode | python | remote-SSH | Debug 配置 + CLIP4Clip实验记录
  • 【Linux】实现windows主机与ubuntu虚拟机系统之间文件/字符复制粘贴
  • Ubuntu22.04-安装后Terminal无法调出
  • ffmpeg两种windows版本区别说明
  • 最新国内AI绘画Midjourney绘画提示词Prompt分享
  • ChatGPT4.0(中文版)国内无限制免费版(附网址)