c++ - 数组中的最小合数
问题描述
我对编程完全陌生,我有点卡在我的代码上。我编写了代码,我想在数组中找到最小的合数(仅使用低级数组)。当我写下数组 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 - C、MPI:程序未终止且未打印数字
- mysql - Laravel 更新获取更新的 id
- entity-framework-core - SQLite 与 SQLServer 之间的实体框架核心数据类型转换差异
- tensorflow - 如何从 TFRecordDataset parse_single_example 生成的张量板上删除/重命名函数
- javascript - 当只有一个为真时触发 for 循环中的所有三个 if 语句 (JavaScript)
- erlang - 如何告诉主管启动特定 gen_server 的 1000 个实例?
- vba - Windows 10 / Office 2016 - 运行宏时未附加所选项目
- c# - 如何获取客户端的MAC地址?
- .htaccess - htaccess - 加载 css、js、图像
- javascript - javascript 的 QuerySelector VS Jquery 的 Find()