21xrx.com
2025-04-02 11:42:16 Wednesday
文章检索 我的文章 写文章
C++求最大值和次大值
2023-06-29 04:00:42 深夜i     --     --
C++ 求值 最大值 次大值

在C++中,求最大值和次大值是常见的问题。解决这个问题的方法有很多种,下面介绍一种简单易懂的算法。

首先,我们定义两个变量来分别保存最大值和次大值。初始时,将最大值设为极小值,次大值设为0。

然后,遍历数组,如果当前元素比最大值大,则将最大值赋值为当前元素,并将原最大值赋值给次大值;如果当前元素比最大值小但比次大值大,则将次大值赋值为当前元素。

最后,返回最大值和次大值即可。

下面是用C++语言实现上述算法的代码:

#include<iostream>
using namespace std;
int main()
{
  int n,max1,max2;
  cin>>n;
  int a[n];
  for(int i=0;i<n;i++)
    cin>>a[i];
  max1=a[0];
  max2=0;
  for(int i=1;i<n;i++)
  {
    if(a[i]>max1)
    {
      max2=max1;
      max1=a[i];
    }
    else if(a[i]<max1 && a[i]>max2)
      max2=a[i];
  }
  cout<<"最大值为:"<<max1<<endl;
  cout<<"次大值为:"<<max2<<endl;
  return 0;
}

以上就是求最大值和次大值的C++算法实现方法。该方法思路简单,代码易懂,适用于大部分情况。希望能帮助大家解决求最大值和次大值的问题。

  
  

评论区