我正在编写一个函数以返回数组的最大值,当前它未返回正确的值。
功能:
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;
最佳答案
for(int i=0;i<ARRAY_SIZE;i++)
{
if (maximum[i]>largest)
{
return largest=maximum[i];
}
}
当找到较大的值时,loop语句将停止,它可能不会检查数组中的所有元素。
应该进行如下修改:
for(int i=0;i<ARRAY_SIZE;i++)
{
if (maximum[i]>largest)
{
largest=maximum[i];
}
}
return largest;
每次检查数组中的元素时,如果它大于当前最大值,则将最大值更新为当前元素。最后返回最大值
关于c++ - C++数组函数未返回正确的结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33547686/