我正在编写一个函数来返回数组的最大值,但目前它没有返回正确的值。
功能:
int findMax(int maximum[ARRAY_SIZE])
{
int largest=maximum[0];
for(int i=0;i<ARRAY_SIZE;i++)
{
if (maximum[i]>largest)
{
return largest=maximum[i];
}
}
}
主要功能部分:
cout<<"Maximum number: "<< findMax(numbers) <<endl;
最佳答案
return largest=maximum[i];
此行将使您的循环通过返回找到的第一个元素提前返回。
可能您只想执行 largest = maximum[i];
然后在循环后 return largest;
。
但你使用的是 C++,为什么你需要自己滚动 findMax
函数:
int array[] = {1,100,65,21,12,5};
int* max = ::max_element(begin(array), end(array));
关于C++ 数组函数没有返回正确的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33547686/