博客
关于我
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/

    你可能感兴趣的文章
    mysql 记录的增删改查
    查看>>
    MySQL 设置数据库的隔离级别
    查看>>
    MySQL 证明为什么用limit时,offset很大会影响性能
    查看>>
    mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
    查看>>
    mysql 里对root及普通用户赋权及更改密码的一些命令
    查看>>
    Mysql 重置自增列的开始序号
    查看>>
    MySQL 高可用性之keepalived+mysql双主
    查看>>
    mysql5.6.21重置数据库的root密码
    查看>>
    MySQL5.6忘记root密码(win平台)
    查看>>
    mysql5.7 for windows_MySQL 5.7 for Windows 解压缩版配置安装
    查看>>
    MySQL5.7.18主从复制搭建(一主一从)
    查看>>
    MySQL5.7.19-win64安装启动
    查看>>
    mysql5.7性能调优my.ini
    查看>>
    Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
    查看>>
    Mysql5.7版本单机版my.cnf配置文件
    查看>>
    mysql5.7的安装和Navicat的安装
    查看>>
    mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
    查看>>
    MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
    查看>>
    MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
    查看>>
    MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
    查看>>