题目:编写一个程序,求一个整数数组中最大元素和次大的元素。
题解:
设计函数fun用于求一个数组中的最大元素与次大元素,为了能改变实参的值,函数形参设计为引用型参数。
#include<iostream>
using namespace std;
void fun(int a[],int n,int &maxp1,int &maxp2)
{
int i;
if(a[0]<a[1]){
maxp1 = a[1];
maxp2 = a[0];
}
else{
maxp1 = a[0];
maxp2 = a[1];
}
for(i=2 ; i<n; i++){
if(a[i]>a[1])
{
maxp2 = maxp1;
maxp1 = a[i];
}
}
}
int main()
{
int a[]={0,2,5,6,8,1,3,4,7,9},max1,max2;
int n=10;
fun(a,n,max1,max2);
cout<<"MAX1="<<max1<<" "<<"MAX2="<<max2<<endl;
return 0;
}