Question 1
Question
¿Qué ocurre en la ejecución del siguiente código en C++?
int *num = new int;
*num=5;
Answer
-
Se declara un puntero y se le asigna un valor
-
Se declara un puntero y se le asigna la dirección de memoria "5"
-
Ninguna de las otras respuestas
-
Se declara un puntero asignándole una posición de memoria. Después, se asigna un contenido a dicha posición de memoria
Question 2
Question
¿Se puede generar un número aleatorio en C++?
Answer
-
Sí, con una librería de C++
-
Ninguna de las otras respuestas
-
No
-
Depende del ingenio del programador, dado que se debe programar manualmente
Question 3
Question
¿Se puede deshacer la definición de un nombre simbólico de una constante?
Question 4
Question
¿Cuál es el tipo de datos más adecuado para representar las características de un coche en C++? Algunas de las características de un coche pueden ser: marca, longitud, anchura y color.
Answer
-
Una estructura (también llamada registro)
-
Un array con un tamaño igual al número de características
-
Ninguna de las otras opciones es adecuada
-
Varias variables de tipos básicos (i.e. float, string, etc)
Question 5
Question
¿Cuáles son las diferencias entre "#if" e "if" en C++?
A) La primera es una directiva al preprocesador, mientras que la segunda es una palabra reservada para la estructuras condicionales.
B) Sólo la primera se trata en la fase de preprocesado
C) Sólo "if" puede usar variables en la expresión que evalúa
D) Sólo "#if" puede usar nombres simbólicos de constantes en la definición
Question 6
Question
¿Cuánto es el valor de "soluciones[2]" después de ejecutarse el siguiente código en C++?
char soluciones[5]={'a','b','a',b','c'};
Question 7
Question
¿Cuáles de los siguientes códigos los tratará el preprocesador de C++?
CÓDIGO A
#define ACELARACION_GRAVEDAD 9.8
CÓDIGO B
float ACELARACIÓN_GRAVEDAD=9.8;
Answer
-
Sólo B
-
Sólo A
-
Ninguno de los dos
-
A y B
Question 8
Question
¿Cuál es el resultado de aplicar el preprocesador de C++ a la siguiente instrucción con el siguiente macro?
MACRO
#define cubo(x) = x*x*x
INSTRUCCIÓN
z = cubo(2+1);
Answer
-
z=(2+1)*(2+1)*(2+1);
-
z=2+1*2+1*2+1;
-
z=27;
-
z=7;
Question 9
Question
¿Cómo se puede acceder al peso de un gato según la siguiente definición de tipo y la siguiente variable en C++?
DEFINICIÓN DEL TIPO
typedef struct{
______char nombre [64];
______float peso;
} Gato
DECLARACIÓN DE LA VARIABLE
Gato *gatoTonet = new Gato;
Question 10
Question
¿Se puede evaluar si un letra es mayúscula en C++? ¿y si es un signo de puntuación?
Answer
-
Sí, con una librería de C++
-
No
-
Ninguna de las otras respuestas
-
Depende del ingenio del programador, dado que ambas operaciones se deben programar manualmente.
Question 11
Question
¿Qué código es más adecuado y simple para sumar dos vectores de 20 elementos en C++?
A)
z[0]=x[0]+y[0];
z[1]=x[1]+y[1];
z[2]=x[2]+y[2];
...
B)
for (int i=0;i<20;i++){
______z[i]=x[i]+y[i];
}
C)
z=x+y;
Question 12
Question
¿Qué ocurre en la ejecución del siguiente código en C++?
int *num;
*num=2;
Answer
-
Ninguna de las otras respuestas
-
Se declara un puntero y se le asigna un valor
-
Se produce un error dado que no se ha asignado memoria al puntero
-
Se declara un puntero y se le asigna la dirección de memoria "2"
Question 13
Question
¿Cuál es el código resultante de aplicar el preprocesador de C++ al siguiente código?
CÓDIGO ANTERIOR AL PREPROCESADO
#define ACELARACION_GRAVEDAD 9.8
...
v = v + ACELERACION_GRAVEDAD * t;
CÓDIGO A
float ACELERACION_GRAVEDAD=9.8;
...
v = v + ACELERACION_GRAVEDAD * t;
CÓDIGO B
v = v + 9.8 * t;
CÓDIGO C;
#define ACELARACION_GRAVEDAD 9.8
...
v = v + ACELERACION_GRAVEDAD * t;
Question 14
Question
¿Qué ofrecen las librerías de C++?
A) Herramientas para que el programador pueda usar, e.g. tratamiento de la entrada/salida y cadenas de caracteres.
B) Optimización de la eficiencia del código, e.g. anticipación de valores por cálculos en paralelo y simplificación de expresiones antes de la compilación.
Answer
-
Ninguna de las dos
-
Sólo A
-
A y B
-
Sólo B
Question 15
Question
¿Cuántos índices son necesarios para acceder a un elemento de una matriz en programación?
Question 16
Question
¿Se puede concatenar dos cadenas de caracteres en C++?
Answer
-
No se puede hacer de manera directa. El programador deberá programar obligatoriamente una función para dicha operación.
-
Sí, con la palabra reservada correspondiente.
-
Ninguna de las otras respuestas
-
Sí, con la función "strcat" de la librería estándar "cstring"
Question 17
Question
¿Qué es un vector en programación?
Answer
-
Una secuencia de valores, en la que se obtienen directamente los índices a partir de dichos valores
-
Ninguna de las otras respuestas
-
Una secuencia de valores del mismo tipo en la que se puede acceder directamente a sus valores indicando las posiciones
-
Una estrutura de datos que describe una dirección geométrica, que está determinada por dos valores
Question 18
Question
¿Es correcto el siguiente código en C++?
char longitud_corbatas [5]={5,3,4,4,7};
longitud_corbatas[2]=7;
Answer
-
No, porque los índices sólo sirven para acceder a los elementos y no para cambiar dichos elementos
-
Sí, dado que se puede modificar el valor de un vector
-
No, porque no se puede modificar el valor de un vector una vez se ha asignado inicialmente
-
Depende de diversos factores
Question 19
Question
¿Cómo se puede determinar si el siguiente puntero tiene un contenido de valor 7 en C++?
int *longitud;
Answer
-
if(*longitud==7){...}
-
if(longitud==&7){...}
-
if(&longitud==7){...}
-
if(longitud==7){...}
Question 20
Question
¿Cuál es el resultado de aplicar el preprocesador de C++ a la siguiente instrucción con el siguiente macro?
MACRO
#define cubo(x) = ((x)*(x)*(x))
INSTRUCCIÓN
z = cubo(2+1);
Answer
-
z=3*3*3;
-
z=((2+1)*(2+1)*(2+1));
-
z=27;
-
z=(2+1)*(2+1)*(2+1);
Question 21
Question
¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
char casilla;
Answer
-
&casilla
-
casilla[0]
-
*casilla
-
&char
Question 22
Question
¿Qué expresiones son válidas para declarar una cadena de caracteres en C++?
A) char str[6]="brazo";
B) char *str="brazo";
C) char str="brazo";
D) char str []= {'b','r','a','z','o','\0'};
E) string str ("brazo");
Question 23
Question
¿Cómo se puede acceder al peso de un gato según la siguiente definición de tipo y la siguiente variable en C++?
DEFINICIÓN DEL TIPO
typedef struct{
______char nombre [64];
______float peso;
} Gato
DECLARACIÓN DE LA VARIABLE
Gato gatoTonet;
Question 24
Question
¿Cómo se obtiene el contenido del siguiente puntero en C++?
char *casilla;
Question 25
Question
Asume la siguiente representación de una casilla de un tablero de damas:
'b': Hay una ficha blanca
'n': Hay una ficha negra
'v': La casilla está vacía
Recuerda que un tablero de damas es cuadrado y la longitud de su lado es de 8 casillas.
¿Cómo representarías un tablero de damas con fichas en C++?
Question 26
Question
¿Qué se debe realizar cuando se deja de utilizar un puntero para el cual se reservó memoria con "new" en C++?
Answer
-
Salir del ámbito donde fue declarado el puntero
-
No volver a usar la expresión "*puntero"
-
Liberar la memoria con "delete", y recomendablemente establecer el puntero a NULL
-
Asignar el puntero a NULL
Question 27
Question
¿Qué es un puntero en programación?
Answer
-
Una variable que contiene una dirección de memoria donde está almacenado un valor
-
Un variable que contiene cualquier tipo
-
Ninguna de las otras respuestas
-
Un vector o una matriz
Question 28
Question
¿Cuál es el tipo más adecuado para referirse a los cinco tipos de dedos que hay en las manos (i.e. pulgar, índice, corazón, anular y meñique)?
Question 29
Question
¿Qué contiene la siguiente variable en C++? int *entrada;
Question 30
Question
¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
int diametro_rueda;
Answer
-
*diametro_rueda
-
diametro_rueda
-
& int
-
&diametro_rueda
Question 31
Question
¿Cómo se puede evaluar si dos cadenas caracteres tienen el mismo contenido en C++?
char cadena1[256]=...;
char cadena2[256]=...;
Question 32
Question
En la siguiente instrucción, ¿hay alguna diferencia entre aplicar la siguiente macro "cubo" y aplicar una función "cubo" que calcula el cubo de un valor?
MACRO
#define cubo(x) = ((x)*(x)*(x))
INSTRUCCIÓN
z = cubo(b++);
A) Con el macro se incrementa tres veces la variable "b", mientras que con la función sólo se incrementaría una vez.
B) Con el macro, el tiempo de ejecución es ligeramente menor.
Answer
-
Sólo B
-
Sólo A
-
Ninguna de las dos
-
A y B
Question 33
Question
¿Qué permite la librería estándar de entrada/salida de C++?
A) Leer de teclado
B) Mostrar mensajes por pantalla
C) Dado un valor real de entrada, generar su raíz cuadrada de salida.
D) Concatenar dos cadenas de caracteres.
E) Escribir y leer de archivo
Question 34
Question
¿Que es el preprocesamiento en programación?
Answer
-
Ninguna de las otras opciones
-
Un compilado que permite nombrar las variables en código máquina
-
Un fase previa de la compilación, que permite por ejemplo definir nombres y macros, e incluir texto de otros ficheros
-
Un fase previa de compilado que permite optimizar las estructuras de repetición
Question 35
Question
¿Se puede calcular el coseno de un número en C++?
Answer
-
No
-
Ninguna de las otras respuestas
-
Depende del ingenio del programador, dado que se debe programar manualmente
-
Sí, con una librería de C++
Question 36
Question
¿Cómo es recomendable incluir un módulo de cálculos geométricos definido por el propio programador?
Answer
-
Con una directiva que incluya su fichero de cabecera, sin incluir ninguna extensión
-
Con una directiva que incluya su fichero de código, incluyendo su extensión, i.e. ".cpp"
-
Ninguna de las otras respuestas
-
Con una directiva que incluya su fichero de cabecera, incluyendo su extensión, i.e. ".h"
Question 37
Question
¿Cuáles de las siguientes funcionalidades tiene el preprocesador de C++?
A) Inicializar las variables con datos
B) Incluir los archivos de cabecera de otros módulos
C) Definir la compilación condicional
D) Optimizar la compilación de las estructura condiciona (i.e. "if").
Question 38
Question
¿Cuáles de las siguientes funcionalidades tiene el preprocesador de C++?
A) Definir nombres simbólicos de constantes
B) Definir nombres de variables.
C) Definir macros
D) Definir funciones