📜  1 到百随机数 CPP - C++ (1)

📅  最后修改于: 2023-12-03 15:13:04.980000             🧑  作者: Mango

1 到百随机数 CPP - C++

简介

这是一个在 C++ 中生成 1 到 100 之间随机数的程序。本程序提供了两种方法:使用标准库和使用 C++11 的随机数生成器。

生成随机数的方法
方法一:使用标准库

使用 rand() 函数可以生成伪随机数。以下是程序示例:

#include <iostream>
#include <cstdlib>
#include <ctime>

int main() {
  // 设置随机数种子
  std::srand(std::time(0));

  // 生成 1 到 100 之间的随机数
  int randomNumber = std::rand() % 100 + 1;

  std::cout << "随机数:" << randomNumber << std::endl;

  return 0;
}

以上程序中,srand() 函数用于设置随机数种子,确保每次程序运行时生成的随机数是不同的。rand() 函数用于生成 0 到 RAND_MAX 之间的伪随机数,使用取余运算将其限制在 1 到 100 之间。

方法二:使用 C++11 随机数生成器

C++11 引入了更强大和更方便的随机数生成器。以下是使用 std::random_devicestd::uniform_int_distribution 的程序示例:

#include <iostream>
#include <random>

int main() {
  // 创建随机数生成器
  std::random_device rd;
  std::mt19937 gen(rd());
  
  // 设置随机数范围
  std::uniform_int_distribution<> dis(1, 100);

  // 生成 1 到 100 之间的随机数
  int randomNumber = dis(gen);

  std::cout << "随机数:" << randomNumber << std::endl;

  return 0;
}

以上程序中,random_device 用于生成真实的随机数种子,mt19937 是一个高质量的随机数引擎,uniform_int_distribution 用于定义随机数范围。使用 dis(gen) 可以生成指定范围内的随机数。

结论

无论使用标准库还是 C++11 的随机数生成器,都能够轻松地在 C++ 中生成 1 到 100 之间的随机数。根据实际需求,选择适合的方法来生成随机数。

注意:程序中的随机数生成结果是伪随机数,并非真正的随机数。