lo que tienes que hacer recursiva no es la matriz, es la función, aquí un ejemplo (lo hice en C++ pero a tus efectos es lo mismo)
Código
#include <iostream> void recursiva(int* array, int largo); int main(){ int elementos[10]; recursiva(elementos, 10); int i; for(i=0;i<10;i++){ std::cout << elementos[i] << std::endl; } return 0; } void recursiva(int* array, int largo){ if(largo>0){ largo--; array[largo] = largo*largo; recursiva(array, largo); } }
por que escribes void recursiva(int* array, int largo); antes y despues de la main?