Мой код это будет это найти максимальное число из массива с помощью рекурсии, но не находит наибольшее количествоНахождение максимального элемента массива, используя рекурсию
#include <stdio.h>
int maximum(int ar[], int n)
{
if (n == 1) {
return ar[0];
} else {
int max = maximum(ar, n-1);
printf("Largest element : %d\n", max);
return 5; // return ar[n-1] > max ? ar[n-1] : max;
}
}
int main()
{
int array[5] = {5, 23, 28, 7, 1};
printf("Maximum element of the array is: %d", maximum(array, 5));
return 0;
}
Где вы сравниваете числа из массива? Подсказка: нет. – NominSim
Почему вы закомментировали 'return ar [n-1]> max? ar [n-1]: max; '? – johnchen902
Для этого вам не нужна рекурсия, просто начните с первого элемента как «максимум» и сравните каждый элемент с макс. Если элемент, который вы сравниваете, больше, чем предыдущий, то это становится максимальным до конца. Используйте for-loop, начиная с 1, и переходите к концу массива. –