给定n个正整数,求它们的最大值。
请使用递归实现。
思路:
这道题要求使用递归实现,那么递归函数构思是关键。
那一次递归应该要比较一次,递归边界应该是到第一个元素比较。
int bijiao(int n){
if(n==1){
return num[1];
}
else{
return max(bijiao(n-1),num[n]);
}
}
完整代码如下:
#include <iostream>
#include <algorithm>
using namespace std;
int maxnum = 0;
int num[101] = {0};
int bijiao(int n){
if(n==1){
return num[1];
}
else{
return max(bijiao(n-1),num[n]);
}
}
int main(){
int n;
cin>>n;
for(int i=1;i<=n;i++){
cin>>num[i];
}
cout<<bijiao(n)<<endl;
return 0;
}