C 数组中的最大值

新手上路,请多包涵

我正在尝试通过使用算法库/头文件中的 max 函数在用户制作的数组中找到“最大”元素。

我在 cplusplus 参考网站上做了一些研究,但在那里我只看到了如何使用 max 函数比较两个元素。相反,我试图使用函数 ‘max’ 显示最大数量,而不必创建一个 ‘for’ 循环来找到它。

例如:

数组: array[]={0,1,2,3,5000,5,6,7,8,9} 最大值: 5000

我已经编写了这段代码,但它给了我一堆错误,这可能是问题所在?

 #include <iostream>
#include <algorithm>
using namespace std;
int main()
{
    int array[11];
    int n = 10;
    for (int i = 0; i < n; i++) {
       array[i] = i;
    }
    array[5] = 5000;
    max(array , array + n);
    for (int i = 0; i < n; i++)
        cout << array[i] << " ";
    return 0;
}

原文由 JohnnyOnPc 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 689
1 个回答

max_element 是您需要的功能。它返回一个迭代器,指向给定范围内的最大元素。你可以像这样使用它:

 cout << " max element is: " << *max_element(array , array + n) << endl;

在这里您可以找到有关此功能的更多信息:http: //en.cppreference.com/w/cpp/algorithm/max_element

原文由 Ardavel 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏