c语言rand的最大值,[讨论]有关rand()生成数的大小..

2023-11-07

[讨论]有关rand()生成数的大小..

我想生成32bits的随机数...现在想知道rand()最大能生成多少bits的随机数

搜索更多相关的解决方案:

rand  成数

----------------解决方案--------------------------------------------------------

当然是32位可以表示的最大数.

----------------解决方案--------------------------------------------------------

可是经过反复测试,是生成的16位的随机数..

#include "stdafx.h"

#include

#include

#include "conio.h"

void generate(unsigned int *R)

{

int i;;

time_t t;

srand((unsigned) time(&t));

printf("Ten random numbers:\n");

for(i=0; i<32; i++)

{

R[i]=rand()*rand();

printf("%x\n", R[i]);

}

}

int main(void)

{

unsigned int *R;R=new unsigned int[32];

generate(R);

getch();

return 0;

}

#include "stdafx.h"

#include

#include

#include "conio.h"

void generate(unsigned int *R)

{

int i;;

time_t t;

srand((unsigned) time(&t));

printf("Ten random numbers:\n");

for(i=0; i<32; i++)

{

R[i]=rand()*rand();

printf("%x\n", R[i]);

}

}

int main(void)

{

unsigned int *R;R=new unsigned int[32];

generate(R);

getch();

return 0;

}

Ten random numbers:

89d9ea0

107eb108

12af1c0

1e3488ac

5e86a7f

72acb6f

1a5928a

317f883

47d81e4

3a6d988

11f9e460

20ba7cc

30f778da

1d0dcaf8

f54d434

6f70c74

d06eb7e

28d82fa9

1fd1db8d

19035106

d4623e0

2be5805

1beded80

95350a7

20727cbe

34090086

2e1ea8d8

8cc425

225505e7

20806e0

24b2dbb6

e6f8c10

这个结果是rand()*rand()得到的

下面是rand()得到:

Ten random numbers:

5eb4

2629

412e

5861

64b1

69fc

3b9c

41a7

2070

4c46

5f5f

54b7

5176

4ad0

3e30

7b36

1e66

6fb

73fd

2129

43bd

9a4

6b3c

3800

1abf

7e4a

3b7f

6ad3

cb2

2973

5648

67eb

谁能给我解释下

----------------解决方案--------------------------------------------------------

我的意思其实随机数的最大值肯定是你机器和编译器决定的位数.

和定义的一般变量的范围一样.(应该是和int相同吧).

----------------解决方案--------------------------------------------------------

楼主看看rand()的返回类型就知道了.

rand()返回值就是一个随机的,楼主怎么可能要rand()返回一个一定达到32bit的数.

----------------解决方案--------------------------------------------------------

我还是不明白啊...我的意思是生成的最大的数是32bits就可以...

我用rand()返回的那一组数,最大的是16位的啊。。我怎么考虑都最大的应该是32位的啊。。我在不同的机子上运行,都是最大16位的。。。谁能给我说说为甚么啊

----------------解决方案--------------------------------------------------------

[0,RAND_MAX]

----------------解决方案--------------------------------------------------------

如果想要 unsigned int 可以自己升级它们。

R[i] = (unsigned int)intrand() * (unsigned int)rand();

for(i=0; i<32; i++)

{

R[i] = (unsigned int)intrand() * (unsigned int)rand();

printf("%x\n", R[i]);

}

//-------------------------------------------------//

若这样还不行,那就>>>

unsigned int ra1;

unsigned int ra2;

..........

for(i=0; i<32; i++)

{

ra1 = rand();

ra2 = rand();

R[i] = ra1 * ra2;

printf("%x\n", R[i]);

}

这个所有编译器都能很好的处理。

----------------解决方案--------------------------------------------------------

以下是引用cosdos在2007-11-3 22:04:32的发言:

如果想要 unsigned int 可以自己升级它们。

R[i] = (unsigned int)intrand() * (unsigned int)rand();

for(i=0; i<32; i++)

{

R[i] = (unsigned int)intrand() * (unsigned int)rand();

printf("%x\n", R[i]);

}

//-------------------------------------------------//

若这样还不行,那就>>>

unsigned int ra1;

unsigned int ra2;

..........

for(i=0; i<32; i++)

{

ra1 = rand();

ra2 = rand();

R[i] = ra1 * ra2;

printf("%x\n", R[i]);

}

这个所有编译器都能很好的处理。

楼主需要的是32位的随机数,而不是32个随机数,不知道楼上何出此CODE。

另外,随机变量X,Y均在[0,RAND_MAX]上服从均匀分布,X*Y的分布情况如何呢?是在[0,RAND_MAX*RAND_MAX]服从均匀分布吗?

如果是的话如何证明呢?

如果不是的话,这种做法是否欠妥呢

----------------解决方案--------------------------------------------------------

又想了想我上面的问法有些错误,X,Y都是离散型随机变量,不是服从均匀分布。

而X*Y的分布没有必要讨论了。

如果按照cosdos的做法,(RAND_MAX,RAND_MAX*RAND_MAX]之间的质数被随机到的可能性是0,原因很简单一个质数不可能被分解成两个数的乘积的形式,所以这种做法确实是欠妥的。

----------------解决方案--------------------------------------------------------

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c语言rand的最大值,[讨论]有关rand()生成数的大小.. 的相关文章

  • 一文读懂USB TypeC与USB-PD。TypeC引脚定义-24P 16P 6P,CC1、CC2的作用,USB-PD介绍,USB2.0/3.0接口类型一览

    USB TypeC USB PD USB接口类型 24P USB TypeC 引脚定义 USB TypeC 拥有诸多优点 双面可插不担心正反 可做USB 雷电高速传输载体 支持 PD快充 音频设备 HDMI传输 调试模式等诸多功能 市面上的
  • 【花雕学AI】超级提问模型大全!150个ChatGPT神奇示例,让你的聊天更有趣!

    引言 你是否想要成为聊天高手 让你的对话更加有趣和深入 你是否想要掌握一些超级提问模型 让你的聊天更加有创意和挑战 你是否想要借助人工智能的力量 生成一些适合你的超级提问模型 如果你的答案是肯定的 那么你一定不能错过这篇文章 在这里 我们将
  • 大话设计模式——适配器模式

    适配器模式 适配器模式 将一个类的接口转换成客户希望的另外一个接口 Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作 系统的数据和行为都正确 但接口不符时 我们应该考虑用适配器 目的是使控制范围之外的一个原有对象与
  • fabric基本概念

    Hyperledger fabric基本概念 首先fabric是由IBM贡献的超级账本框架 它是一个利用现有成熟的技术来组合而成的一个区块链技术的实现 它是一种允许可插拔实现各种功能的的模块化架构 它具有强大的容器技术 来承载各种主流语言来
  • mysql 有外键 怎么插入数据_外键约束的表怎么插入数据

    有外键的情况应该先添加主表数据 再添加副表数据 如 有以下两张表 班级表 CLASSID NAME 1 一班 2 二班 学生表 SID NAME CLASSID 1 张三 1 2 李四 1 3 王五 2 其中学生表中的CLASSID是班级表
  • tenforflow实战谷歌深度学习框架

    图像识别与卷积神经网络 神经网络 全连接层网络结构 卷积神经网络 循环神经网络 第八章介绍 全连接层网络结构 神经网络层中的邻接层的节点都与相邻的节点相连接 卷积神经网络 和全连接层中的神经网络整体结构差不多 但是结构还是有很大的差别 卷积
  • if or函数套用_Excel If函数单条件与用嵌套或And/*、OR/+组合多个条件使用实例

    If函数是 Excel 中使用特别多的函数之一 它用于逻辑判断 Excel If函数共有三个参数 第一个为条件 二三个为返回值 如果条件为真 返回第二个参数 否则返回第三个参数 If函数可以嵌套 并且在一个If函数中最多能嵌套 64 个 I
  • 该升级了,阿里云Code升级Codeup

    如果你还在使用阿里云Code 不防看看如何从阿里云Code升级至Codeup 云效代码管理Codeup是阿里云出品的一款企业级代码管理平台 提供代码托管 代码评审 代码扫描 质量检测等功能 全方位保护企业代码资产 帮助企业实现安全 稳定 高
  • GeoServer style(sld)中文乱码解决方法

    在说明这个问题之前 有三点需要明确 一是创建New style时 网页中文本框内的内容才是最终会应用到GeoServer的sld内容 这与本地sld文件没有关系 二是xml的encoding定义的编码不一定和文件编码 文件的字符编码 一致
  • 【C++】C++知识面经;C++易错点汇总;

    文章目录 在main执行之前和之后执行的代码可能是什么 程序在执行int main int argc char argv 时的内存结构 你了解吗 C 从代码到可执行程序 预处理 编译 汇编 链接 C 特点 为什么C 没有垃圾回收机制 这点跟
  • 算法图解 总结

    定义 算法指的是解题方案的准确而完整的描述 是一系列解决问题的清晰指令 算法代表着用系统的方法描述解决问题的策略机制 也就是说 能够对一定规范的输入 在有限时间内获得所要求的输出 如果一个算法有缺陷 或不适合于某个问题 执行这个算法将不会解
  • 怎么使用chatGTP

    ChatGTP是一个开源的即时通讯工具 可以用来在网络上进行实时文本聊天 要使用ChatGTP 您需要完成以下步骤 安装ChatGTP 在网上搜索 ChatGTP 然后在官方网站上下载并安装最新版本的软件 创建帐户 打开ChatGTP 点击
  • 怎么用python编简单游戏大全_适合新手练手的三个python简单小游戏

    学Python之前我们先来几个简单的小游戏练练手 这三个小游戏一个比一个复杂 建议新手慢慢来 1 猜拳 import random 导入随机模块 num 1 yin num 0 shu num 0 while num lt 3 if shu
  • RGMII(介质独立接口) PCB布线设计

    RGMII 介质独立接口 PCB布线设计 本文主要讲解的是RGMII PCB的设计 包括特性和运用的总结 希望大家看了以后能轻松的应对各种RGMII方案的PCB设计 网络设备一定离不开MAC和PHY 有MAC和PHY的地方就有相应的接口 无
  • Dubbo源码分析----过滤器之ActiveLimitFilter

    ActiveLimitFilter也是用来做并发控制的 区别在于ExecuteLimitFilter作用于服务端 而ActiveLimitFilter作用于客户端 看下官网的例子
  • php获取远程文件curl函数的使用

    1 curl函数介绍 curl close 关闭一个curl会话 curl copy handle 复制一个cURL句柄和它的所有选项 curl errno 返回最后一次的错误号 curl error 返回一个保护当前会话最近一次错误的字符
  • 允许asp.net web程序的跨域访问

    什么叫跨域 简单理解就是不同服务器 不同域名之间的访问 如何设置asp net web程序的跨域 在web config中添加如下代码
  • C++中的虚函数和纯虚函数详细讲解

    1 虚函数 1 1 概念 1 定义一个函数为虚函数 不代表函数为不被实现的函数 2 定义他为虚函数是为了允许用基类的指针来调用子类的这个函数 1 2 简介 假设我们有下面的类层次 class A public virtual void fo
  • 用ping让对方电脑堵塞瘫痪

    用ping让对方电脑堵塞瘫痪2008 04 27 11 32 定义echo数据包大小 在默认的情况下windows的ping发送的数据包大小为32byt 我们也可以自己定义它的大小 但有一个大小的限制 就是最大只能发送65500byt 也许

随机推荐

  • Codeforces Round #736 (Div. 2)_A. Gregor and Cryptography

    A Gregor and Cryptography 题目传送门 题目传送门 题面截图 题目大意 给你个质数P 输出 a b a b a b满足 2
  • Talib技术因子详解(四)

    talib安装方式 pip install Ta lib Tushare数据获取请参考 金融量化分析基础环境搭建 数据获取代码请参考 Talib技术因子详解 一 26 MACD 异同移动平均线 调用方式如下 macd macdsignal
  • Swingbench基准测试-4、基准测试报告(results2pdf)

    生成基准测试报告 基准测试完成后 自动将生成测试结果 results xml 该文件需要可使用 results2pdf 将xml结果生成pdf格式 转换过程如下 results2pdf bat c results xml o results
  • C# 迭代器实现枚举器

    在上一篇日志中说的手动实现枚举器来枚举自定义的类型 http blog csdn net weixingstudio article details 6817319 可以看到过程非常复杂 而且容易出错 为了减轻程序员的负担 C 还提供了迭代
  • tp5开发购物商城

    Tp5 1开发购物商城 本人已自学2年 PHP计算数据库中商品总和 非联表查询 1 首先利用client type 注册类型 client id 注册ID 查询出对应的产品订单 2 在common公共文件中 利用对产品表进行查询出相应的价格
  • Qt d指针简单实现及解析

    object h ifndef OBJECT H define OBJECT H define INVOKE METHOD PRIVATE Class Class Private d func return reinterpret cast
  • 虚拟机无法打开“D:\虚拟机\CentOS.vmx”

    虚拟机无法打开 D 虚拟机 CentOS vmx 对于这个问题 解决方法是移管理员身份运行这个VM软件 但是每次都用管理员权限很麻烦 一劳永逸的方法是 1 右击软件打开属性 2 选兼容性那个 3 勾选里面的以管理员身份运行 4 点击确定就可
  • UE4和C++ 开发-Unity 过度到 Unreal 4 对比简化版

    3 两个引擎的部分术语对比 4 7 From GameObjects to Actors 从GameObjects到Actors GameObject在UE4中如何体现 UE4有一个 Gameplay Framework 系统来使用这些Ac
  • 分解质因数模板

    include
  • CTP量化之路一(CTP接口篇)

    随时股票交易越来越顺 条件单系统大大缩减了我看盘的时间 资产越来越多的同时 分散风险也成了个人的需求 因为手时已有成熟的交易策略 自已曾经用的期货账号也还没有被冻结 于是想着拣来做期货自动化 于是自上周向期货公司申请了期货自动化 填写了一堆
  • kubeadm搭建高可用k8s集群

    1 环境准备 hostname IP 组件 m1 192 168 150 140 keepalived haproxy etcd apiserver docker controller manager scheduler m2 192 16
  • 韦东山视频

    第一期 第二期 一期 免费 54节视频 共16 93G 二期 73节视频 每节50分钟总时长3650分钟 共29 6G 掌握写汇编代码的能力 可以分析任意裸板包括U boot 内核里的相关汇编代码 掌握常用的硬件部件的操作 比如GPIO U
  • 【C语言】17-函数-3

    1 链接属性 当组成一个程序的各个源文件分别被编译之后 所有的目标文件以及那些从一个或多个函数库中引用的函数将链接在一起 形成可执行程序 然而 如果相同的标识符出现在几个不同的源文件中时 它们是表示同一个实体 还是表示不同的实体 标识符的链
  • vc不认识 CTreeView

    在VC中调用 CTreeView 方法是 VC会提示error c2504 CTreeView base class undefined CTreeView的基类没有被定义 必须在系统头文件声明处 StdAfx h 加入其头文件 afxcv
  • 把Windows安装到U盘,给Mac电脑用

    启动转换助理是在mac的硬盘分区装win10 mac硬盘金贵呀 以下解决方案把win10安装在u盘 不安装在mac硬盘上 想用的时候插上mac电脑即可 1 把win安装在u盘上 首先在启动转换助理上下载windowssupport文件 具体
  • iOS开发实战之app获取通讯录(iOS 9)

    在做通讯类APP的时候 时常会访问到手机的通讯录 来获取联系人的各种属性 那么本文就来讨论一下怎么获取通讯录 注意 iOS 9 版本上可以行 其他版本未试 第一步 先导入系统库 Contacts framework 然后在 h上导入头文件
  • VGG与风格迁移算法原理

    一 实验介绍 1 1 实验内容 上节课我们学习了卷积神经网络的基本原理 本节实验我们将学习用于图像风格迁移的经典的卷积神经网络模型VGG 并用caffe提供的 draw net py 实现模型的可视化 本节实验我们也将学习图像风格转换的算法
  • 11月22日 EQS优化,让AI知道什么地方不能走,自定义游戏模式,让AI在玩家旁边生成,难度提升,随着时间增多的AI

    EQS优化 让AI知道什么地方不能走 首先进行小修改 创建一个新的AIEQS 新建一个测试pawn 把测试pawn放入场景内 在eqs中放入我们写的eqs任务 使用模拟游戏 就可以直接可视化eqs的选择坐标点 https docs unre
  • JMeter之压力测试——混合场景并发

    在实际的压力测试场景中 有时会遇到多个场景混合并发的情况 这时就需要设置不同的并发比例对不同场景请求数量的控制 下面提供两种方案 一 多线程组方案 1 业务场景设计如下 场景A 场景B 场景C 三个场景按照并发比例要求进行100个用户并发的
  • c语言rand的最大值,[讨论]有关rand()生成数的大小..

    讨论 有关rand 生成数的大小 我想生成 bits的随机数 现在想知道rand 最大能生成多少bits的随机数 搜索更多相关的解决方案 rand 成数 解决方案 当然是32位可以表示的最大数 解决方案 可是经过反复测试 是生成的 位的随机