#include <stdio.h>

int amax(int a[], int n) { if (n == 1) // 只剩一个元素,返回该元素 return a[0]; else { int max = amax(a, n-1); // 递归求出前n-1个元素的最大值 if (a[n-1] > max) // 如果第n个元素比前n-1个元素的最大值还大,就返回第n个元素 return a[n-1]; else // 否则返回前n-1个元素的最大值 return max; } }

int main() { int a[10], imax; int i; for (i = 0; i < 10; i++) scanf('%d', &a[i]); imax = amax(a, 10); printf('max=%d\n', imax); return 0; }

C语言递归算法求数组最大值 - 代码示例与解析

原文地址: https://www.cveoy.top/t/topic/oeQE 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录