CGU-NET | UGC NET CS 2015 junio – II | Pregunta 11

¿Cuál es la salida del siguiente programa?
(Suponga que se incluyen las directivas de preprocesador adecuadas y que no hay ningún error de sintaxis)

main ( ) 
     { char S[ ] = "ABCDEFGH"; 
      printf ("%C", *(&S[3]));
      printf ("%s", S + 4); 
      printf ("%u", S);        
      /* Base address of S is 1000 */        
     }

(A) ABCDEFGH1000
(B) CDEFGH1000
(C) DDEFGHH1000
(D) DEFGH1000

Respuesta: (D)
Explicación:

main ( ) 
     { char S[ ] = "ABCDEFGH"; 
      printf ("%C", *(&S[3]));
      printf ("%s", S + 4); 
      printf ("%u", S);        
      /* Base address of S is 1000 */        
     }

Del programa anterior:
printf («%C», *(&S[3])); imprimirá el carácter en *(&S[3]), es decir, D.
printf (“%s”, S + 4); imprimirá una string a partir de S + 4, es decir, EFGH.
imprimirf («%u», S); imprimirá la dirección de S, es decir, 1000.
Dado que no hay una nueva instrucción de línea, DEFGH1000 será la salida.
Entonces, la opción (D) es correcta.

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 *