21xrx.com
2024-11-22 07:32:53 Friday
登录
文章检索 我的文章 写文章
如何在C++面试中生成随机数
2023-06-28 17:57:56 深夜i     --     --
C++ 面试 随机数 生成

在 C++ 面试中,经常会遇到要求生成随机数的问题。生成随机数是一个基本的编程技巧,也是一个非常重要的知识点,因为它在计算机科学中有着广泛的应用。

在 C++ 中,有多种方法可以生成随机数,下面介绍一些最常用的方法。

1. 使用 rand() 函数

在 C++ 中,可以使用 rand() 函数生成随机数。rand() 函数默认情况下会生成一个范围为 0 到 RAND_MAX 的随机整数。要使用 rand() 函数,需要包含头文件

下面是一个使用 rand() 函数生成随机数的示例:


#include <iostream>

#include <cstdlib>

using namespace std;

int main()

{

  //设置随机数种子

  srand((unsigned)time(NULL));

  //生成一个范围在0到100之间的随机数

  int num = rand() % 101;

  cout << "随机数为:" << num << endl;

  return 0;

}

2. 使用 c++11 提供的随机数库

在 C++11 中提供了一个随机数库,可以生成更高质量的随机数。要使用这个库,需要包含头文件

下面是一个使用 c++11 提供的随机数库生成随机数的示例:


#include <iostream>

#include <random>

using namespace std;

int main()

{

  //创建一个随机数引擎

  random_device rd;

  mt19937 gen(rd());

  //生成一个范围在0到100之间的随机数

  uniform_int_distribution<> dis(0, 100);

  int num = dis(gen);

  cout << "随机数为:" << num << endl;

  return 0;

}

以上就是在 C++ 面试中生成随机数的常用方法。在使用 rand() 函数时,需要记得在程序开头使用 srand() 函数设置一个随机种子,以保证每次程序运行生成的随机数都是不同的。在使用 c++11 提供的随机数库时,可以使用更高质量的随机数生成器和更多种类的随机分布。

  
  

评论区

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