21xrx.com
2025-03-27 18:50:40 Thursday
文章检索 我的文章 写文章
如何在C++中随机给数组元素加上正负号
2023-07-04 19:13:09 深夜i     36     0
C++ 随机 数组 元素 正负号

在C++中,要随机给数组元素加上正负号,可以利用随机数生成器生成0或1的随机数来决定当前元素加上正号或者负号。

以下是一个实例代码:

#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
  const int SIZE = 5;
  int arr[SIZE];
  srand(time(0)); // 用当前时间作为随机数生成器的种子
  // 随机生成数组
  for (int i = 0; i < SIZE; i++)
  {
    arr[i] = rand() % 10 + 1; // 随机生成1到10之间的整数
  }
  // 随机给数组元素加上正负号
  for (int i = 0; i < SIZE; i++)
  {
    if (rand() % 2 == 1)
    {
      arr[i] = -arr[i]; // 随机生成0或1,如果是1,把当前元素变成相反数
    }
  }
  // 输出数组
  for (int i = 0; i < SIZE; i++)
  {
    cout << arr[i] << " ";
  }
  cout << endl;
  return 0;
}

在这个示例中,我们首先生成一个长度为SIZE的数组,并使用time(0)函数作为rand()函数的种子,以保证产生的随机数是不同的。

然后在for循环中,我们使用rand() % 2来生成一个随机数0或1,如果是1,则将当前元素变成相反数,以达到随机加上正负号的效果。

最后,我们输出数组的元素来查看结果。

需要注意的是,这个方法只是一种产生随机数组的方法,如果需要更加复杂的随机数组,可以自行编写生成随机数的函数,并进行相应的处理。

  
  

评论区

请求出错了