c++ - 数组的最小值

标签 c++ arrays function codeblocks minimum

我正在尝试编写一个函数来返回数组的最小值。到目前为止我有这个,但它返回的都是 0。

我不明白它会如何返回 0,因为我使用 for 循环循环遍历数组。也许它并没有像我想象的那样循环遍历数组值。谁能详细说说这段代码的逻辑和谬误?

#include <iostream>

using namespace std;

int newArray[9] = {4,5,9,3,6,2,1,7,8};


int minArray()
{
    int index = 1;
    int minimum;

    for (int i = 0; i < 9; i++)
    {
        if (newArray[i] > newArray[index])
        {
            minimum = newArray[index];
        }
        index++;

    }

    return minimum;
}


int main()    
{   
    cout << "original array:\n ";
    for (int i = 0; i < 9; i++)
    {
        cout << newArray[i] << ", ";
    }

    cout << "minimum value of array: ";
    cout << minArray();

    return 0;
}

最佳答案

一个好主意可能是用数组中的一个元素初始化最小值。 所以:

minimum = newArray[0]

在你的循环中(假设你不想要答案的伪代码):

if: newArray[pos] < minimum

        minimum = newArray[pos];

关于c++ - 数组的最小值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14924470/

相关文章:

javascript - 从数组中生成一个随机单词,然后将其打印到控制台日志中的 javascript 函数中

function - 从脚本 block 动态创建 PowerShell 脚本 block

javascript - 将参数传递给函数,同时保留事件处理程序

c++ - Qt,CodeBlocks minGW 问题与依赖关系

c++ - 是否可以在C++中调用delete时阻止析构函数运行?

C++:如何防止默认构造函数使用 AVX 进行初始化

Android NDK 找到动态链接 : unable to debug library

arrays - 如何修改 mongoDB 中的子条目

时间字符串上的 Javascript split()

jquery - 如何更改图像 onclick javascript 函数?