21xrx.com
2024-11-10 00:34:21 Sunday
登录
文章检索 我的文章 写文章
如何在C++中生成随机的1和2数字
2023-07-11 13:42:32 深夜i     --     --
C++ 生成 随机 1 2

在C++中生成随机的1和2数字是一项很有趣的任务,而且有很多方法可以实现。本文将介绍两种常用的方法。

方法一:使用rand函数生成随机数

在C++中,有一个rand()函数,它可以生成一个伪随机数。我们可以使用这个函数来生成1和2的随机数。具体实现方法如下:


#include <iostream>

#include <cstdlib> // 要使用rand函数和srand函数,需要包含cstdlib头文件

#include <ctime>  // 用于获得系统时间,初始化随机数种子

using namespace std;

int main()

{

  srand(time(NULL)); // 用系统时间初始化随机数种子

  int num = rand() % 2 + 1; // 生成1或2的随机数

  cout << num << endl;

  return 0;

}

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

C++11引入了一个新的随机数库,它提供了更好的随机数生成函数。我们可以使用这个库来生成1和2的随机数。具体实现方法如下:


#include <iostream>

#include <random> // 要使用随机数库,需要包含random头文件

using namespace std;

int main()

{

  random_device rd;  // 获取真随机数种子

  mt19937_64 gen(rd()); // 使用mt19937_64随机数引擎生成随机数

  uniform_int_distribution<int> dis(1, 2); // 使用uniform_int_distribution生成1到2之间的均匀分布随机数

  int num = dis(gen); // 生成1或2的随机数

  cout << num << endl;

  return 0;

}

需要注意的是,使用C++11的随机数库需要C++11编译器的支持,代码示例中使用的是mt19937_64随机数引擎和uniform_int_distribution生成1到2之间的均匀分布随机数。我们可以根据实际需求选择不同的随机数引擎和分布函数。

总结:

C++中生成随机的1和2数字的方法有很多,我们可以使用rand函数或C++11的随机数库来实现。其中,rand函数是最为常见和简单的方法,C++11的随机数库则提供了更好的随机数生成函数。我们可以根据实际需求选择不同的方法来生成随机的1和2数字。

  
  

评论区

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