C++:最大数组值函数工作不正常
C++: Function for Max Array Value working improperly
我正在尝试编写一个函数来查找数组中的最大值,而无需使用任何内置的 c++ 函数,如排序、max_element等。
我在下面开发了这段代码,它最终决定了"最大值",但它并不总是正确的:
double dispMax(int farray[], int maxValue)
{
int max = farray[0];
for (int x = 0; x < maxValue; x++) //maxValue is size of farray
{
if (farray[x] > max)
{
max = farray[x];
return max;
}
}
}
farray[] 是未排序的,仅由数据类型列表组成(例如 (123.25, 234.3, 345.12((。
有时它甚至没有遍历整个数组,就好像它只是找到了它认为是最大值的东西,然后立即返回那个值。
此外,如果我调整函数以找到最小值,我会得到类似的结果,几乎是最小值,但不完全是。
任何帮助都非常感谢!
返回在错误的地方
假设数组为 1 2 3
所以最大 = 1;
然后当它转到第二个值时
farray[1] = 2 它大于 1,所以返回 (?(
将返回放在 for 循环之外,让循环遍历所有数组
double dispMax(int farray[], int maxValue)
{
// need to be double
double max = farray[0];
for (int x = 0; x < maxValue; x++) //maxValue is size of farray
{
if (farray[x] > max)
{
max = farray[x];
}
}
return max;
}
相关文章:
- 为字符串中每 N 个字符插入空格的函数没有按照我认为的方式工作?
- C++中的memset函数工作不正常
- 渲染窗口无法跨多个函数工作
- C++:最大数组值函数工作不正常
- 仅一个功能的链接错误.在同一类和CPP文件中具有相似签名的其他函数工作正常
- 如何让我的构造函数和函数工作,以便我的 main() 能够同时显示字符串和 int 数据
- (c++)无法让 void 函数工作,主.cpp内部的几行也有问题
- 编译器生成的默认构造函数工作 - C++
- 我似乎无法让我的最大长度递归函数工作
- 无法让 SHGetKnownFolderPath() 函数工作
- Qt 5.2无法使qWait函数工作
- 模板作为递归函数工作
- 构造函数工作不正常
- 如何让c风格的字符串函数工作
- 我如何让这个构造函数工作
- C函数工作,c++版本不
- 为什么我的衍生自CRTP函数工作
- 不明白为什么这个C++递归函数工作背后的逻辑
- 对不存在的对象调用成员函数工作正常,c++
- 如何使 cv::setMouseCallback 函数工作