Score %0 (0 correct0 incorrect20 unanswered)

Q1. ¿Qué muestra de código eventualmente causará que la computadora se quede sin memoria?

  • :
while(1)
{
    char *smallString = (char *) malloc(10);
}
  • :
long long number = 1;
    while(1)
    number *= 2;
  • :
while(1)
{
    char hugeString[1000000L];
    memset(hugeString, 0, 1000000L);
}
  • :
while(1)
{
    long *bigArray = (long *) malloc(sizeof(long) * 1000);
    memset(bigArray, 1000000, 1000);

    (bigArray);
}

Q2. ¿Cuál será la salida del código a continuación?

int f1 (int a, int b)
{
    if (a > b)
    {
        printf("A is greater than B\n");
        return 1;
    }
    else
    {
        printf("B is greater than A");
        return 0;
    }
}

main()
{
    if (f1(20,10) || f1(10,20))
        printf("C is fun!\n");
}
  • :
A is greater than B
C is fun!
  • :
A is greater than B
B is greater than A
C is fun!
  • :
A is greater than B
B is greater than A
  • Nothing is printed on Screen

Q3. ¿Cuál es el nombre para llamar a una función dentro de la misma función?

  • recursión
  • subfunción
  • llamada interna
  • bucle infinito

Referencia

Q4. ¿Qué demuestra la declaración de la variable c2?

main(){
    char c1 ='a';
    char c2 = c1+10;
}
  • aritmética de caracteres
  • asignación no definida
  • conversión de tipo
  • declaración inválida

Referencia

Q5. ¿De qué es un ejemplo esta declaración?

struct s {
    int i;
    struct s *s1;
    struct s *s2;
};
  • un nodo
  • una lista enlazada
  • una pila
  • un árbol binario

Q6. Los archivos de encabezado se enumeran utilizando la directiva de preprocesamiento #include, y pueden tener uno de los siguientes formatos: #include <fileA> o #include "fileB". ¿Cuál es la diferencia entre estos dos formatos?

  • El preprocesador intentará localizar fileA en el mismo directorio que el archivo fuente, y fileB en una ruta de directorio predeterminada.
  • El preprocesador intentará localizar fileA en el directorio fijo del sistema. Intentará localizar fileB en la ruta del directorio designada por la opción -I agregada a la línea de comandos al compilar el código fuente.
  • El archivo que utiliza la sintaxis fileA debe ser archivos del sistema, de número ilimitado; fileB debe ser un archivo de usuario con un máximo de uno por archivo fuente.
  • El preprocesador intentará localizar fileA en una ruta de directorio predeterminada. Intentará localizar fileB en el mismo directorio que el archivo fuente junto con una ruta de directorio personalizada.

Referencia

Q7. Usando un bucle for, ¿cómo podrías escribir un código C para contar hacia atrás desde 10 hasta 1 y mostrar cada número en su propia línea?

  • :
for (int i = 0; i>=0, i--){
    printf("%d\n", i);
}//end of loop
  • :
int i;
for (i=1; i<=10; i++){
    printf("%d", i);
}
  • :
int i = 10;
while (i>0){
    printf("%d\n", i);
    i--;
}
  • :
int i;
for (i= 10; i>0; i--){
    printf("%d\n", i);
}// end of loop

Q8. ¿Cuál de las siguientes palabras no es una palabra reservada en C estándar?

  • volatile
  • typeof
  • register
  • typedef

Referencia

Q9. ¿Qué devuelve el programa que se muestra a continuación?

int main(){
    int a=1, b=2, c=3, d=4;
    int x = a;
    if (a>b)
    if (b<c) x=b;
    else x=c;
    return(x);
}
  • 1
  • 3
  • 2
  • 0

Q10. Usando la declaración de la Unión a continuación, ¿cuántos bytes de espacio de memoria ocupará el dato de este tipo?

union Cars {
    char make[20];
    char model[30];
    short year;
} car;
  • 32
  • 54
  • 30
  • 52

Q11. En este ejemplo de código, ¿qué no es un problema para el compilador de C?

main(){
    constant int PI = 3.14;
    printf("%f\n", pi);
}
  • El valor de PI debe establecerse en 3.141593, no en 3.14
  • La declaración de PI debe decir const, no constante.
  • El tipo de datos de PI debe ser float, no int.
  • La declaración printf debe usar PI, no pi.

Q12. ¿Cuál es el programa más pequeño para compilar y ejecutar sin errores?

  • main()
  • int main() {return 0;}
  • main() { }
  • main() { ; }

Referencia

Q13. ¿Qué es opcional en una declaración de función?

  • tipo de datos de los parámetros
  • tipo de retorno de la función
  • nombres de parámetros
  • número de parámetros

Referencia

Q14. C trata todos los dispositivos, como la pantalla y el teclado, como archivos. ¿Qué archivo se abre automáticamente cuando se ejecuta un programa?

  • stdout
  • stdio.h
  • default.h
  • string.h

Q15. ¿En qué segmento tiene lugar la asignación de memoria dinámica?

  • Segmento BSS
  • pila
  • montón
  • segmento de datos

Referencia

Q16. ¿Qué función usas para liberar memoria?

  • dalloc()
  • dealloc()
  • release()
  • free()

Referencia

Referencia

Q17. En el lenguaje C, ¿cuáles son los bloques de construcción básicos que se construyen juntos para escribir un programa?

  • palabras clave
  • identificadores
  • tokens
  • funciones

Referencia

Q18. ¿Cuándo se asigna memoria para una variable?

  • durante la asignación de la variable
  • durante la inicialización de la variable
  • durante la declaración de la variable
  • durante la definición de la variable

Referencia

Q19. C usa el método de llamada por valor para pasar argumentos a funciones. ¿Cómo puedes invocar el método de llamada por referencia?

  • mediante el uso de punteros
  • mediante la declaración de funciones por separado de su definición
  • mediante el uso de funciones recursivas
  • mediante el uso de variables globales

Referencia

Q20. Una unión te permite almacenar diferentes ___ en el mismo ___.

  • Objetos; Estructura
  • Variables; Declaración
  • Tipos de datos; Espacio de memoria
  • Matrices; Archivo de encabezado