首页 > 解决方案 > 数组中的最小合数

问题描述

我对编程完全陌生,我有点卡在我的代码上。我编写了代码,我想在数组中找到最小的合数(仅使用低级数组)。当我写下数组 3 的大小并输入 1 2 77 时,它会随机抛出 16。你能解释一下为什么会发生这种情况,或许可以给出一些解决方案。

#include<iostream>
using namespace std;

int fun(int n)
{

    int arr[n];
    int mini = arr[0];
    for (int i = 0; i < n; i++)
        cin >> arr[i];

    for (int i = 0; i < n; i++)
    {
        for (int j = 2; j < arr[i]; j++)
        {
            if (arr[i] % j == 0)
            {
                if (mini > arr[i])
                {
                    mini = arr[i];
                }
                else
                {
                    mini = mini;
                }

                break;
            }

        }

    }

    return mini;
}

int main()
{
    int n;
    cout << "Size of array: ";
    cin >> n;

    cout << "Write " << n << " numbers: " << fun(n) << endl;

    return 0;

}

标签: c++

解决方案


推荐阅读