用c++实现对数组的随机赋值
时间: 2023-10-23 14:08:45 浏览: 285
好的,非常高兴为您解答这个问题。
要实现对数组的随机赋值,可以使用C语言的rand()函数生成随机数,再将随机数赋值给数组对应的元素。下面是一段示例代码:
```c
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define ARRAY_SIZE 10
int main() {
int arr[ARRAY_SIZE];
int i;
srand(time(NULL)); // 初始化随机数种子
for (i = 0; i < ARRAY_SIZE; i++) {
arr[i] = rand() % 100; // 生成 0~99 之间的随机数
printf("%d ", arr[i]);
}
return 0;
}
```
这段代码定义了一个长度为10的整型数组arr,使用srand()函数初始化随机数种子,并利用循环结构和rand()函数将生成的随机数赋值给数组的每个元素。最后通过printf()函数输出数组的所有元素。
希望这个回答能够帮到您,有问题可以随时追问。
相关问题
c++中给二维数组随机赋值
在C++中,给二维数组随机赋值通常涉及到生成随机数并将其存入数组的每个元素。以下是一个简单的示例,使用`<random>`库来生成随机整数,并假设数组的大小已知:
```cpp
#include <iostream>
#include <vector>
#include <cstdlib> // for rand and srand
#include <ctime> // for time
// 定义二维数组的类型和大小
std::vector<std::vector<int>> randomArray(int rows, int cols) {
std::vector<std::vector<int>> arr(rows, std::vector<int>(cols));
// 设置随机数种子,为了得到一致的结果可以使用当前时间
std::srand(std::time(0));
// 遍历二维数组,给每个元素赋随机值
for (int i = 0; i < rows; ++i) {
for (int j = 0; j < cols; ++j) {
arr[i][j] = std::rand() % 100; // 生成0到99之间的随机整数
}
}
return arr;
}
int main() {
int rows = 5, cols = 4;
std::vector<std::vector<int>> randomArr = randomArray(rows, cols);
// 打印数组内容
for(const auto &row : randomArr) {
for(const int &val : row) {
std::cout << val << " ";
}
std::cout << "\n";
}
return 0;
}
```
在这个例子中,我们创建了一个`rows x cols`的二维数组,然后通过两个嵌套循环遍历每个元素,并为其赋予0到99的随机整数。
c++ 17 将数组中的数据随机赋值
在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`函数的第三个参数来指定一个不同的随机数生成器对象。
阅读全文