Salida del siguiente programa
#include <stdio.h> int fun(int n) { static int s = 0; s = s + n; return (s); } int main() { int i = 10, x; while (i > 0) { x = fun(i); i--; } printf ("%d ", x); return 0; }
(A) 0
(B) 100
(C) 110
(D) 55
Respuesta: (D)
Explicación: Dado que s es estático, se le agregan diferentes valores de i uno por uno.
Entonces el valor final de s es
s = yo + (i-1) + (i-2) + … 3 + 2 + 1.
El valor de s es i*(i+1)/2. Para i = 10, s es 55.
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