21xrx.com
2024-12-22 23:13:07 Sunday
登录
文章检索 我的文章 写文章
C++如何生成随机数?
2023-07-03 14:34:04 深夜i     --     --
C++ 随机数 生成

C++中生成随机数的方法有很多种,下面介绍几种常见的方法。

1. 使用rand()函数

rand()函数是cstdlib库中的一个随机数生成函数,可以用于生成伪随机数。为了确保每次程序运行时生成的随机数不同,通常需要使用srand()函数来设置rand()函数的种子。

以下是一个简单的生成随机数的例子:


#include <iostream>

#include <cstdlib>

#include <ctime>

int main() {

  srand(time(NULL));

  int randomNumber = rand() % 100 + 1;

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

  return 0;

}

上面的代码会生成一个1~100之间的随机整数,并将其输出到控制台中。

2. 使用C++11的随机数库

C++11引入了一个新的随机数库,可以生成更加高质量的随机数。使用这个库的方法包括以下几步:


#include <iostream>

#include <random>

int main() {

  std::random_device rd; // 获取种子

  std::mt19937 gen(rd()); // 设置随机数生成器,使用Mersenne Twister算法

  std::uniform_int_distribution<> dis(1, 100); // 设置随机数分布范围

  int randomNumber = dis(gen); // 生成随机数

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

  return 0;

}

上面的代码会生成一个1~100之间的随机整数,并将其输出到控制台中。由于使用的是真正随机的种子,因此生成的随机数更加高质量。

总结

以上介绍了两种在C++中生成随机数的方法,其中使用C++11的随机数库能够生成更加高质量的随机数,建议在实际使用中使用该方法。

  
  

评论区

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