用c++ 定义一个5×5的数组,用随机函数产生4×4的数据,把每行中前4个元素中最小的放在最后一列,再把前四行中每列最大数放在最后一行。 如产生4×4的数据: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 结果为: 1 2 3 4 1 5 6 7 8 5 9 10 11 12 9 13 14 15 16 13 13 14 15 16 13
时间: 2023-12-31 10:04:40 浏览: 59
下面是C++代码实现:
```c++
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
int main()
{
const int ROW = 5;
const int COL = 5;
int arr[ROW][COL];
srand(time(0)); // 初始化随机数种子
// 产生4x4的数据
for (int i = 0; i < ROW - 1; ++i) {
for (int j = 0; j < COL - 1; ++j) {
arr[i][j] = rand() % 16 + 1;
cout << arr[i][j] << "\t";
}
cout << endl;
}
// 把每行中前4个元素中最小的放在最后一列
for (int i = 0; i < ROW - 1; ++i) {
int min = arr[i][0];
for (int j = 1; j < COL - 1; ++j) {
if (arr[i][j] < min) {
min = arr[i][j];
}
}
arr[i][COL - 1] = min;
}
// 把前四行中每列最大数放在最后一行
for (int j = 0; j < COL - 1; ++j) {
int max = arr[0][j];
for (int i = 1; i < ROW - 1; ++i) {
if (arr[i][j] > max) {
max = arr[i][j];
}
}
arr[ROW - 1][j] = max;
}
// 输出结果
cout << endl;
for (int i = 0; i < ROW; ++i) {
for (int j = 0; j < COL; ++j) {
cout << arr[i][j] << "\t";
}
cout << endl;
}
return 0;
}
```
其中,先产生4x4的随机数据,然后对每行中前4个元素中最小的放在最后一列,对前四行中每列最大数放在最后一行,最后输出结果。
阅读全文