Requisito previo: bucles while
P.1 ¿Cuál es el resultado de este programa?
#include <iostream> using namespace std; int main() { unsigned int x = 3; while (x-- >= 0) { printf("%d ", x); } return 0; }
Opción
a) 3 2 1 0
b) 2 1 0 -1
c) bucle infinito
d) -65535
Answer : C
Explicación : aquí x es un número entero sin signo y nunca puede volverse negativo. Entonces, la expresión x–>=0 siempre será verdadera, por lo que es un ciclo infinito.
P.2 ¿Cuál es el resultado de este programa?
#include <iostream> using namespace std; int main() { int x = 3, k; while (x-- >= 0) { printf("%d ", x); } return 0; }
opción :- a
a) 3 2 1 0
b) 2 1 0 -1
c) bucle infinito
d) -65535
Answer: b
Explicación: Aquí x es un número entero con valor 3. El bucle se ejecuta hasta que x>=0; Se imprimirá 2, 1, 0 y después de x>=0, la condición vuelve a ser verdadera e imprime -1 después de falso.
P.3 ¿Cuál es el resultado de este programa?
#include <iostream> using namespace std; int main() { int x = 0, k; while (+(+x--) != 0) { x++; } printf("%d ", x); return 0; }
opción
a) 1
b) 0
c) -1
d) infinito
Answer : C
Explicación Unario + es el único operador ficticio en C++. Así que no tiene efecto en la expresión.
P.4 ¿Cuál es el resultado de este programa?
#include <iostream> using namespace std; int main() { int x = -10; while (x++ != 0) ; printf("%d ", x); return 0; }
opción
a) 0
b) 1
c) -1
d) infinito
Answer: b
Explicación : el punto y coma está después del ciclo while. mientras que el valor de x se convierte en 0, sale del bucle while. Debido al incremento posterior en x, el valor de x durante la impresión se convierte en 1.
P.5 ¿Cuál es el resultado de este programa?
#include <iostream> using namespace std; int main() { while (1) { if (printf("%d", printf("%d"))) break; else continue; } return 0; }
opción
a) Valor basura
b) 1
c) 0
d) Error
Answer : a
Explicación : el printf interno se ejecuta e imprime algún valor basura.
Este artículo es una contribución de Gyayak Jain . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.
Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
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