21xrx.com
2025-02-16 22:06:51 Sunday
登录
文章检索 我的文章 写文章
C++如何生成随机数?
2023-06-23 12:02:49 深夜i     --     --
C++ 随机数 生成 rand函数 srand函数

在C++中,生成随机数是非常常见的操作,它可以用于许多不同的应用程序,例如游戏、计算机模拟和密码学等。C++提供了许多不同的方法来生成随机数,这里将介绍其中两种常用方法。

1. 使用rand函数生成随机数

C++标准库中的rand函数是生成随机数的一种常见方法,它的使用方法非常简单。首先,需要包含头文件 ,然后使用srand函数初始化随机数种子,最后使用rand函数生成随机数。

例如,以下代码使用rand函数生成一个0到99之间的随机数:


#include <stdlib.h>

#include <iostream>

int main()

{

  srand(time(0)); // 设置随机数种子

  int random_number = rand() % 100; // 生成0~99之间的随机数

  std::cout << "Random number: " << random_number << std::endl;

  return 0;

}

2. 使用random库生成随机数

C++11标准引入了一个新的库 ,其中包含了一些更加先进的生成随机数的方法。其中一个常用的方法是使用uniform_int_distribution函数生成一个指定范围内的随机整数。该函数需要指定随机数生成器(也称为“引擎”)和随机数分布(也称为“分布”)。

例如,以下代码使用random库生成一个0到99之间的随机数:


#include <random>

#include <iostream>

int main()

{

  std::random_device rd; // 使用随机数设备生成随机数种子

  std::mt19937 gen(rd()); // 定义引擎

  std::uniform_int_distribution<> dis(0, 99); // 定义分布

  int random_number = dis(gen); // 生成0~99之间的随机数

  std::cout << "Random number: " << random_number << std::endl;

  return 0;

}

总之,在C++中生成随机数有很多种方法,以上仅是其中两种实现方式。在实际应用中,需要根据不同的需求选择合适的方法。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复