博客
关于我
C++ 生成 -10 到 30 的随机数(可扩展)
阅读量:692 次
发布时间:2019-03-17

本文共 1239 字,大约阅读时间需要 4 分钟。

C++ 生成 -10 到 30 的随机数

在这个示例中,我们将学习如何使用C++编写一个简单的程序,来生成-10到30之间的随机数。这个程序将利用标准库中的随机数功能,通过向量来存储生成的随机数,并在终端打印出来。

### 代码解析

#include 
#include
#include
#include
using namespace std; int main() { vector
nums; srand((unsigned)time(NULL)); // 初始化随机数生成器 for (int i = 0; i < 20; i++) { nums.push_back(rand() % 41 - 10); // 生命 -10 到 30 的随机数 } for (int num : nums) { cout << num << " "; } cout << endl; return 0; }

### 代码功能解释

  • 包含必要的库:我们需要包括 std::vector(向量)、 std::cstdlib(基本操作数)、 std::ctime(获取当前时间)和 std::iostream(标准输入输出流)。using namespace std; 命令用于简化代码书写。

  • 初始化随机数生成器srand((unsigned)time(NULL)); 这行代码通过将当前时间转换成一个不定性的数值,来初始化随机数生成器。这确保每次运行程序生成的随机数都不一样。

  • 生成随机数并存储:使用了一个循环,从0到19,共计20次。每次循环中,调用 rand() % 41 生成0到40之间的随机数,再减去10,得到-10到30之间的随机数。所有生成的随机数被存储在 vector<int> nums; 中。

  • 输出结果:使用范围循环遍历向量中的每一个数,将其打印出来,每个数字后面都跟一个空格,最后一行还会添加一个换行字符以确保输出整洁。

  • ### 两次运行结果对比

    第一次运行结果如下:

    -10, 3, 15, -3, 21, 8, -4, -6, 29, 1, 28, -7, 10, 39-10, 13, 22, -14, 17, 7, 14

    第二次运行结果如下:

    -18, 12, 32-10, 18, 13, -2, 5, 25, 2, 34-10, 9, 1, 31-10, -19, 24, -5, 11, 41-10, 20, 19

    这个程序展示了如何在C++中通过代码生成目标范围内的随机数,并将结果保存和输出。通过调整代码中的参数,可以灵活地改变随机数的范围和数量。

    转载地址:http://ikihz.baihongyu.com/

    你可能感兴趣的文章
    Netty学习总结(6)——Netty使用注意事项
    查看>>
    Netty实现Http服务器
    查看>>
    Netty客户端断线重连实现及问题思考
    查看>>
    Netty工作笔记0001---Netty介绍
    查看>>
    Netty工作笔记0002---Netty的应用场景
    查看>>
    Netty工作笔记0003---IO模型-BIO-Java原生IO
    查看>>
    Netty工作笔记0004---BIO简介,介绍说明
    查看>>
    Netty工作笔记0005---NIO介绍说明
    查看>>
    Netty工作笔记0006---NIO的Buffer说明
    查看>>
    Netty工作笔记0007---NIO的三大核心组件关系
    查看>>
    Netty工作笔记0008---NIO的Buffer的机制及子类
    查看>>
    Netty工作笔记0009---Channel基本介绍
    查看>>
    Netty工作笔记0010---Channel应用案例1
    查看>>
    Netty工作笔记0011---Channel应用案例2
    查看>>
    Netty工作笔记0012---Channel应用案例3
    查看>>
    Netty工作笔记0013---Channel应用案例4Copy图片
    查看>>
    Netty工作笔记0014---Buffer类型化和只读
    查看>>
    Netty工作笔记0015---MappedByteBuffer使用
    查看>>
    Netty工作笔记0016---Buffer的分散和聚合
    查看>>
    Netty工作笔记0017---Channel和Buffer梳理
    查看>>