Salida de programas C | Conjunto 33 (rand() y srand())

Encontró cómo generar números aleatorios y el uso de dos funciones C rand() y srand() del artículo rand() y srand() en C\C++.
A continuación se enumeran algunas preguntas de opción múltiple relacionadas con la salida sobre números aleatorios.
1. El tipo de retorno de la función rand() es: 
a) corto 
b) int 
c) char 
d) float 
Respuesta: 

b

Explicación: el tipo de retorno de rand() es entero.
2. La función srand(sin firmar): 
a) Establece la semilla para rand() 
b) genera un número aleatorio 
c) Es un error 
d) genera una constante. 
Responder: 

a

Explicación: srand() siempre establece la semilla para la función rand().
3. Las funciones rand() y srand() se utilizan: 
a) Para encontrar sqrt 
b) Para operaciones y 
c) Para operaciones o 
d) Para generar números aleatorios 
Respuesta: 

d

4. ¿Cuál es la mejor manera de generar números entre 0 y 99?  
a) rand()-100 
b) rand()%100 
c) rand(100) 
d) srand(100) 
Respuesta: 

b

Explicación: rand() generará un número aleatorio de 0 a RAND_MAX, su módulo con 100 asegura que nuestro resultado debe estar entre 0 y 99 inclusive.
5. El número aleatorio entre mínimo y máximo puede ser generado por: 
a) mínimo + (rand() % (máximo – mínimo)); 
b) mínimo + (rand() % (máximo – mínimo + 1)); 
c) mínimo * (rand() % (máximo – mínimo)) 
d) mínimo – (rand() % (máximo+mínimo)); 
Responder: 

b

Explicación: (máximo – mínimo + 1) es el tamaño del intervalo del intervalo de mínimo a máximo, por lo tanto, rand() % (máximo – mínimo + 1) nos dará un número entero aleatorio entre 0 y el tamaño del intervalo que, cuando se suma al mínimo, da un número aleatorio entre mínimo y máximo.
6. ¿Cuál de los siguientes fragmentos generará efectivamente números aleatorios con el rango más amplio?  
a) rand(); 
b) rand(10); 
c) rand(tiempo(NULO)); 
d) Todas las mencionadas 
Respuesta: 

a

Explicación: rand() genera un número aleatorio entre el amplio rango de 0 a RAND_MAX.
7. Para la función call time(), ¿qué tipo de parámetro se acepta?  
a) int 
b) int * 
c) tiempo_t 
d) tiempo_t * 
Respuesta: 

d

Explicación: el parámetro para time() apunta a un objeto de tipo time_t, donde se almacena el valor de tiempo.
8. ¿Cuál es el resultado de este código C? 
 

C

#include <stdio.h>
#include <stdlib.h>
    int main()
    {
        printf("%d\n", rand() % 1000);
        return 0;
    }

a) Error de tiempo de compilación 
b) Un número  entero entre 0 y 1000
c) Un número entero entre 0 y 999, incluidos 0 y 999. 
d) Un número entero entre 0 y 1000, incluidos 1000 
Respuesta:

c

Explicación: rand() genera un número aleatorio y (rand() % 1000) lo acorta al rango [0, 999].
9. En el siguiente programa, cada vez que se ejecuta un programa, se generan diferentes números. ¿Verdadero o falso? 
 

C

#include <stdio.h>
#include <stdlib.h>
    int main()
    {
        srand(time(NULL));
        printf("%d\n", rand());
        return 0;
    }

a) verdadero 
b) falso 
c) Depende de la plataforma 
d) Depende del compilador 
Respuesta: 

a

Explicación: srand() siempre establecerá una nueva semilla para rand() en cada ejecución del programa.
10. ¿Cuál es el resultado de este código C? 
 

C

#include <stdio.h>
#include <stdlib.h>
 int main()
    {
        srand(9000);
        printf("%d\n", rand());
        return 0;
    }

a) Error de tiempo de compilación 
b) Un número entero en el rango de 0 a RAND_MAX. 
c) Un doble en el rango de 0 a 1 
d) Un float en el rango de 0 a 1. 
Respuesta: 

b

Explicación: rand() generará un número entero en el rango [0, RAND_MAX].
11. ¿Cuál es el resultado de este código C? 
 

C

#include <stdio.h>
#include <stdlib.h>
    int main()
    {
        srand(time(NULL));
        printf("%d\n", rand());
        return 0;
    }

a) Error de tiempo de compilación 
b) Un número entero en el rango de 0 a RAND_MAX. 
c) Un doble en el rango de 0 a 1 
d) Un flotante en el rango de 0 a 1. 
Respuesta: b 
Explicación: rand() generará un número entero en el rango [0, RAND_MAX], pero al ejecutar el programa, cada vez generará número aleatorio diferente debido a srand(time(NULL)).
12. ¿Cuál es el resultado de este código C? 
 

C

#include <stdio.h>
#include <stdlib.h>
    int main()
    {
        printf("%d\n", srand(9000));
        return 0;
    }

a) Error de tiempo de compilación 
b) Un número entero en el rango de 0 a 9000 
c) Un flotante en el rango de 0 a 1 
d) Un doble en el rango de 0 a 9000 
Respuesta: 

a

Explicación: tipo de retorno de srand() id objeto de tipo time_t.
13. En el siguiente programa, cada vez que se ejecuta un programa, se generan diferentes números. 
 

C

#include <stdio.h>
#include <stdlib.h>
    int main()
    {
        printf("%d\n", rand());
        return 0;
    }

a) verdadero 
b) falso 
c) Depende de la plataforma 
d) Depende del compilador 
Respuesta: 

b

Explicación: para eso se debe usar srand().
14. ¿Cuál de estas es una forma correcta de generar números entre 0 y 1 (inclusive) al azar?  
a) rand() / RAND_MAX 
b) rand() % 2 
c) rand(0, 1) 
d) Ninguno de los mencionados 
Respuesta: 

a

Explicación: generar números aleatorios entre [0, 1].
Este artículo es una contribución de Shivam Pradhan (anuj_charm) . 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

Deja una respuesta

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