C++ 从二维数组中获取列 [关闭]

问题描述 投票:0回答:0

我无法从二维数组的每一行和每一列获得最大值

作为输入,我有数组:

int arr[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} };
还有行数和列数:
cols = 4
rows = 3
代码:

  1. 从数组中获取最大值
int getMax(int *arr, int size) 
{
    int max = arr[0];
    for (int i = 0; i < size; i++)
        if (arr[i] > max)
            max = arr[i];
    return max;
}
  1. 初始化函数
string Task4(int rows, int cols)
{
    int arr[3][4] = { {1, 2, 3, 4}, {5, 6, 7, 8}, {9, 10, 11, 12} };
    stringstream functionOutput;
    for (int i = 0; i < rows; i++)
    {
        functionOutput<<getMax(arr[i], cols)<<" ";
    }
    functionOutput << endl;
    for (int i = 0; i < cols; i++)
    {
        functionOutput << getMax(&arr[0][i], rows) << " ";
    }
    return functionOutput.str();
}

我需要

的输出
10 26 42
15 18 21 24

第一行输出是每行

arr
的最大值,第二行是
arr

每列的最大值

我不想使用循环来分配一维数组并且找到最大值我可以使用指针吗我也需要使用

getMax()
func

c++ arrays pointers max
© www.soinside.com 2019 - 2024. All rights reserved.