hola BoKeRoN18.. sam90 te lo explico correctamente.. el caso base sirve para evitar la recursion infinita..
la funcion "piensa asi".. si exponente es igual a 1 entonces no tengo que hacer nada solo devuelvo la base porque a^1=a. sino entonces multiplica la base por la base^e-1 porque es lo mismo tener 3^3 que tener 3*3^2 o 3*3*3^1...
osea si tienes base=2 y exponente =3. la funcion no entra en el if porque la evaluacion es falsa ya que exponente no es igual a 1. entonces va a multiplicar 2*2^2.. luego 2*2*2^1 y en este caso la funcion reconoce el caso base y devuelve 2.. apartir de aqui se producen una serie de retornos.. la ultima funcion llamada devuelve 2, la que le sigue devuelve 2*2 y la primera (la original) devuelve a main 2*2*2.
espero me entiendas sino pregunta