c++ 17 将数组中的数据随机赋值
时间: 2025-01-01 20:36:22 浏览: 10
在C++中,可以使用标准库中的随机数生成器来为数组中的数据随机赋值。以下是一个简单的示例代码,演示如何使用C++17中的随机数生成器为数组中的数据随机赋值:
```cpp
#include <iostream>
#include <random>
#include <algorithm>
int main() {
// 定义一个长度为10的整数数组
int arr[10];
// 使用随机数生成器为数组中的数据随机赋值
std::random_device rd;
std::mt19937 gen(rd());
std::shuffle(arr, arr+10, gen);
// 输出随机赋值后的数组
for (int i = 0; i < 10; ++i) {
std::cout << arr[i] << " ";
}
std::cout << std::endl;
return 0;
}
```
在上面的代码中,我们首先定义了一个长度为10的整数数组`arr`,并使用`std::random_device`生成器生成一个随机数,并将其作为参数传递给`std::mt19937`生成器对象`gen`。然后,我们使用`std::shuffle`函数将数组中的数据随机赋值。最后,我们使用循环输出随机赋值后的数组。
需要注意的是,在使用随机数生成器时,需要确保生成的随机数足够均匀分布,否则可能会导致随机赋值的结果不正确。此外,如果需要为数组中的不同位置赋予不同的随机值,可以使用`std::shuffle`函数的第三个参数来指定一个不同的随机数生成器对象。
阅读全文