Я пытался решить мою проблему с помощью предыдущей темы, но не смог применить ее к моей ситуации, вот код для рекурсивного нахождения максимума массива в массиве в c.Отладка выдает ошибку
Программа получила сигнал SIGSEGV, ошибка сегментации.
0x0000000000400682 в maxarray (arr = 0x7fffffffeb30, n = 10, i = 0,
максимум =)at main.c: 23
Максимальный адрес есть, и я не понимаю, почему он не может получить к нему доступ.
#include <stdio.h>
int maxarray ( int arr[], int n , int i, int maximum);
int main(void){
int arr[10];
int maximum = 0;
puts("the array is");
for (size_t i=0; i<10; ++i) {
arr[i]=(rand()%10);
printf("%d ",arr[i]);
}
printf("the maximum is %d", maxarray(arr,10,0,maximum));
return 0;
}
int maxarray (int arr[10], int n, int i, int maximum){
if (i<10){
if (maximum<arr[i]){
maximum=arr[i];
}
maxarray(arr, n, i++, maximum);
}
else{
return maximum;
}
}