Considere la siguiente función C recursiva que toma dos argumentos
unsigned int foo(unsigned int n, unsigned int r) { if (n > 0) return (n%r + foo (n/r, r )); else return 0; }
¿Cuál es el valor de retorno de la función foo cuando se llama como foo(345, 10) ?
(A) 345
(B) 12
(C) 5
(D) 3
Respuesta: (B)
Explicación: La llamada foo(345, 10) devuelve la suma de los dígitos decimales (porque r es 10) en el número n. La suma de los dígitos de 345 es 3 + 4 + 5 = 12.
Esta solución es aportada por Pranjul Ahuja
Cuestionario de esta pregunta
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA