Hola, gente.
Como el enunciado lo dice tengo algunas dudas sobre el tema recursividad.-
Cuando pongo esta línea de código return num[e]; quisiera saber que mensaje le está enviando el programa a la pila o porque debo suponer que con esto la función deja de auto llamarse.-
Por último ¿me podrían dar alguna sugerencia para mejorarlo?
#include <stdio.h>
int rec( int[], int );
int main(void){
int numeros[] = {1,2,3,4,5,6}, e = sizeof numeros / sizeof *numeros, i;
for( i = 0; i < e; i++ ){
printf( "%d ", numeros[i] );
}
printf( "\n" );
rec( numeros, e );
return 0;
}
int rec( int num[], int e){
if( e == 0){
return num[e];
}
else{
printf( "%d ", num[e-1] );
rec( num, e-1 );
}
return 0;
}
Saludos y muchas gracias.-
Daniel
Con el return, sales de la función, sin volver a llamarla recursivamente.
Hola ivancea96.
Mil disculpas por preguntar algo que era tan obvio.-
Saludos y gracias por responder.
Daniel