数据结构递归问题

来源:百度知道 编辑:UC知道 时间:2024/05/07 05:41:16
一个程序要求求N个整数的最大值,和以及平均数,要求都用递归方法来做.

#include<iostream>
using namespace std;

int array[100]={0};

int biggest( int i )//最大值
{
if( i==0)
return array[0];
else if( array[i]>=biggest(i-1) )
return array[i];
else
return biggest( i-1);
}

float avg( int i )//平均值
{
if( i==0)
return (float)array[0];
else
return ( array[i]+(i)*avg(i-1) )/(i+1);
}

int main(void)
{
int i=0,k ;
while(true)//手动输入数字, 以 -1 表示输入完毕
{
cin>>array[i];
if(array[i]==-1)
break;
i++;
}
cout<<"Biggest number = "<<biggest(i-1)<<endl;
cout<<"AVG = "<<avg(i-1)<<endl;

return 0;
}