#include <
stdio.h>
int max(int arr[], int len)
{
if(1 == len) // 只有一个元素
{
return arr[0];
}
int a = arr[0]; //第一个元素
int b = max(arr + 1, len - 1); //第二个元素起的最大值
return a > b? a : b;
}
int main(void)
{
int a[] = {1,2,3,4,5,6,7,8,9,10};
printf("最大值:%d\n", max(a, sizeof(a) / sizeof(a[0])));
return 0;
}
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/f603918fa0ec08fa6eb5ca0c5cee3d6d54fbdae0?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)