no
porque eso seria un equivalente a
void decBin (int n){
while(1){
if (n == 0){
return 0; //finalizar la funcion
}else if (n == 1){
return 1; //finalizar la funcion
}else{
decBin (n/2);
}
}
}
fijate que en el diagrama dices
inicio
n es igual a 0?
-si, entonces imprime y fin
-no, continua
n es igual a 1?
-si, entonces imprime y fin
-no, continua
hacer funcion decBin
imprimir 0 o 1 n%2
volver al inicio
y te crea un bucle infinito si n>1 (ya que n siempre tendrá el mismo valor)
como te dije, ejecuta a ese recursivo como una función externa, tu función no tiene bucles como para que algo vuelva al inicio, todo apunta hacia el fin
un recursivo no es un bucle a nivel de control de flujo... es una llamada a otra función, esa otra función, tiene su propio alcance (scope) y sus propios valores
inténtalo de nuevo