c++ - C++中改变数组的值

标签 c++ arrays pointers

我的 cpp 程序中有一个二维数组,它在八列和三行中存储 double 值。我有一个函数来确定每行的最小值。现在我想更改那个最小变量的值。我是通过指针传递数组及其对我的挑战。下面是获取最小值的 getMaxMin()。任何帮助将不胜感激。

 double **getMaxMin(double **scores){
    for(int i=0;i<3;i++){
        double small=scores[i][0];
        for(int j=1;j<8;j++){
            if(small>scores[i][j]){
                small=scores[i][j];

            }
        }
        cout<<small<<endl;
    }
    return scores;
}

最佳答案

当你保存 small 时也会保存索引:

// ...
if( small > scores[i][j] )
{
    small = scores[i][j];
    small_i = i;
    small_j = j;
}


// later
scores[small_i][small_j] = //...

我想对于这种情况,您只需要存储列索引,因为您是逐行存储的。这是一个更通用的版本。

关于c++ - C++中改变数组的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22512234/

相关文章:

c - malloc 一个 char 数组

javascript - 使用 ES6 特性将对象转换为数组

pointers - 二叉树的实现可能会出现哪些问题?

c++ - 有效关联事件

c++ - Cuda - 3D block & grid dimension confusion - 另一个

c++ - 将 win32 应用程序图标添加到任务栏

c - Malloc 指针数组错误

c++ - 在这种情况下有什么正确的方法来实现锁定?

c - 如果静态声明矩阵而不在函数头中提及大小,为什么无法将矩阵传递给函数?

c - 更好的方法是什么?