PUERTA | PUERTA CS 2021 | Conjunto 1 | Pregunta 47

Considere el siguiente programa ANSI C.

#include 
int main()
{
    int i, j, count;
    count=0;
    i=0;
    for (j=-3; j<=3; j++)
    {
        if (( j >= 0) && (i++))
        count = count + j;
    }
    count = count +i;
    printf(“%d”, count);
    return 0;
}

¿Cuál de las siguientes opciones es la correcta?
(A) El programa no se compilará con éxito
(B) El programa se compilará con éxito y generará 10 cuando se ejecute
(C) El programa se compilará con éxito y generará 8 cuando se ejecute
(D) El programa se compilará con éxito y generará 13 cuando se ejecute

Respuesta: (B)
Explicación: Inicialmente, i=0, count=0 y un bucle for se ejecuta desde j= -3 hasta j=3.
Si la condición dentro del ciclo for se ejecutará cuando j>=0 e i no sea cero,
entonces para j=-3, -2, -1, no irá dentro de la condición if, ya que j es menor que 0.

Cuando j=0, el valor inicial de i también es 0, por lo que la condición if no se cumplirá, pero i++ incrementará el valor de i después de verificar la condición if. entonces ahora yo = 1.
Cuando j=1, el valor de i es 1, por lo que entrará en la condición if y el valor de count será 0+1 = 1, y i++ incrementará el valor de i después de verificar la condición if. entonces ahora yo = 2.
Cuando j=2, el valor de i es 2, por lo que entrará en la condición if y el valor de count será 1+2 = 3, y i++ incrementará el valor de i después de verificar la condición if. entonces ahora yo =3.
Cuando j=3, el valor de i es 3, por lo que entrará en la condición if y el valor de count será 3+3 =6, y i++ incrementará el valor de i después de verificar la condición if. entonces ahora yo =4.

Después de ejecutar el bucle for, el valor de la variable de conteo es 6 y el valor de i es 4.
Por lo tanto, conteo = conteo +i será 6+4=10.

Por lo tanto, el programa se compilará con éxito y generará 10 cuando se ejecute: https://ide.geeksforgeeks.org/lyJ79mDqil

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

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *