Snuc
Test por , creado hace más de 1 año

Test con la recopilación de preguntas de las unidades 9 y 10 de Fundamentos de la Programación

89
1
0
Snuc
Creado por Snuc hace más de 9 años
Cerrar

FdP. Unidades 9 y 10

Pregunta 1 de 38

1

¿Qué ocurre en la ejecución del siguiente código en C++?
int *num = new int;
*num=5;

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 2 de 38

1

¿Se puede generar un número aleatorio en C++?

Selecciona una de las siguientes respuestas posibles:

  • Sí, con una librería de C++

  • Ninguna de las otras respuestas

  • No

  • Depende del ingenio del programador, dado que se debe programar manualmente

Explicación

Pregunta 3 de 38

1

¿Se puede deshacer la definición de un nombre simbólico de una constante?

Selecciona una de las siguientes respuestas posibles:

  • Depende de la implementación del preprocesador de C++

  • No

  • Si

  • Depende de la implementación del compilador de C++

Explicación

Pregunta 4 de 38

1

¿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.

Selecciona una de las siguientes respuestas posibles:

  • 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)

Explicación

Pregunta 5 de 38

1

¿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

Selecciona una de las siguientes respuestas posibles:

  • Sólo A, B y C

  • Ninguna de las otras propuestas

  • Sólo A y B

  • A, B, C y D

Explicación

Pregunta 6 de 38

1

¿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'};

Selecciona una de las siguientes respuestas posibles:

  • Depende del compilador de C++ en lo referente al tratamiento de vectores

  • 'a'

  • Error porque la declaración es incorrecta

  • 'b'

Explicación

Pregunta 7 de 38

1

¿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;

Selecciona una de las siguientes respuestas posibles:

  • Sólo B

  • Sólo A

  • Ninguno de los dos

  • A y B

Explicación

Pregunta 8 de 38

1

¿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);

Selecciona una de las siguientes respuestas posibles:

  • z=(2+1)*(2+1)*(2+1);

  • z=2+1*2+1*2+1;

  • z=27;

  • z=7;

Explicación

Pregunta 9 de 38

1

¿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;

Selecciona una de las siguientes respuestas posibles:

  • Ninguna de las otras respuestas

  • gatoTonet.peso

  • (&gatoTonet).peso

  • gatoTonet->peso

Explicación

Pregunta 10 de 38

1

¿Se puede evaluar si un letra es mayúscula en C++? ¿y si es un signo de puntuación?

Selecciona una de las siguientes respuestas posibles:

  • 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.

Explicación

Pregunta 11 de 38

1

¿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;

Selecciona una de las siguientes respuestas posibles:

  • A

  • B

  • C

  • Ninguna de las otras respuestas

Explicación

Pregunta 12 de 38

1

¿Qué ocurre en la ejecución del siguiente código en C++?
int *num;
*num=2;

Selecciona una de las siguientes respuestas posibles:

  • 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"

Explicación

Pregunta 13 de 38

1

¿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;

Selecciona una de las siguientes respuestas posibles:

  • Código B

  • Código A

  • Código C

  • Código A o B, dependiendo de la implementación del preprocesador de C++ que se use.

Explicación

Pregunta 14 de 38

1

¿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.

Selecciona una de las siguientes respuestas posibles:

  • Ninguna de las dos

  • Sólo A

  • A y B

  • Sólo B

Explicación

Pregunta 15 de 38

1

¿Cuántos índices son necesarios para acceder a un elemento de una matriz en programación?

Selecciona una de las siguientes respuestas posibles:

  • Dos índices

  • Varios índices

  • Ninguna de las otras respuestas

  • Un único índice

Explicación

Pregunta 16 de 38

1

¿Se puede concatenar dos cadenas de caracteres en C++?

Selecciona una de las siguientes respuestas posibles:

  • 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"

Explicación

Pregunta 17 de 38

1

¿Qué es un vector en programación?

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 18 de 38

1

¿Es correcto el siguiente código en C++?
char longitud_corbatas [5]={5,3,4,4,7};
longitud_corbatas[2]=7;

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 19 de 38

1

¿Cómo se puede determinar si el siguiente puntero tiene un contenido de valor 7 en C++?
int *longitud;

Selecciona una de las siguientes respuestas posibles:

  • if(*longitud==7){...}

  • if(longitud==&7){...}

  • if(&longitud==7){...}

  • if(longitud==7){...}

Explicación

Pregunta 20 de 38

1

¿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);

Selecciona una de las siguientes respuestas posibles:

  • z=3*3*3;

  • z=((2+1)*(2+1)*(2+1));

  • z=27;

  • z=(2+1)*(2+1)*(2+1);

Explicación

Pregunta 21 de 38

1

¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
char casilla;

Selecciona una de las siguientes respuestas posibles:

  • &casilla

  • casilla[0]

  • *casilla

  • &char

Explicación

Pregunta 22 de 38

1

¿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");

Selecciona una de las siguientes respuestas posibles:

  • Sólo A, B, D y E

  • Ninguna de las otras respuestas

  • Sólo A y E

  • A, B, C, D y E

Explicación

Pregunta 23 de 38

1

¿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;

Selecciona una de las siguientes respuestas posibles:

  • gatoTonet->peso

  • Ninguna de las otras respuestas

  • gatoTonet.peso

  • (*gatoTonet).peso

Explicación

Pregunta 24 de 38

1

¿Cómo se obtiene el contenido del siguiente puntero en C++?
char *casilla;

Selecciona una de las siguientes respuestas posibles:

  • Ninguna de las otras respuestas

  • &casilla

  • casilla[1]

  • *casilla

Explicación

Pregunta 25 de 38

1

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++?

Selecciona una de las siguientes respuestas posibles:

  • char tablero [8][8];

  • char tablero [8];

  • char tablero [8][8][8][8][8][8][8][8];

  • int tablero [8];

Explicación

Pregunta 26 de 38

1

¿Qué se debe realizar cuando se deja de utilizar un puntero para el cual se reservó memoria con "new" en C++?

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 27 de 38

1

¿Qué es un puntero en programación?

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 28 de 38

1

¿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)?

Selecciona una de las siguientes respuestas posibles:

  • Un entero

  • Un carácter

  • Un tipo enumerado

  • Ninguna de las otras respuestas es adecuada

Explicación

Pregunta 29 de 38

1

¿Qué contiene la siguiente variable en C++? int *entrada;

Selecciona una de las siguientes respuestas posibles:

  • Un vector

  • Ninguna de las otras respuestas

  • Un entero

  • Una dirección de memoria

Explicación

Pregunta 30 de 38

1

¿Cómo se obtiene la dirección de memoria de la siguiente variable en C++?
int diametro_rueda;

Selecciona una de las siguientes respuestas posibles:

  • *diametro_rueda

  • diametro_rueda

  • & int

  • &diametro_rueda

Explicación

Pregunta 31 de 38

1

¿Cómo se puede evaluar si dos cadenas caracteres tienen el mismo contenido en C++?
char cadena1[256]=...;
char cadena2[256]=...;

Selecciona una de las siguientes respuestas posibles:

  • Ninguna de las otras opciones

  • if(*cadena1==*cadena2){

  • if(strcmp(cadena1,cadena2)==0){

  • if(cadena1==cadena2){

Explicación

Pregunta 32 de 38

1

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.

Selecciona una de las siguientes respuestas posibles:

  • Sólo B

  • Sólo A

  • Ninguna de las dos

  • A y B

Explicación

Pregunta 33 de 38

1

¿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

Selecciona una de las siguientes respuestas posibles:

  • A, B, C, D y E

  • Ninguna de las otras respuestas

  • A, B, C y E

  • A, B y E

Explicación

Pregunta 34 de 38

1

¿Que es el preprocesamiento en programación?

Selecciona una de las siguientes respuestas posibles:

  • 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

Explicación

Pregunta 35 de 38

1

¿Se puede calcular el coseno de un número en C++?

Selecciona una de las siguientes respuestas posibles:

  • No

  • Ninguna de las otras respuestas

  • Depende del ingenio del programador, dado que se debe programar manualmente

  • Sí, con una librería de C++

Explicación

Pregunta 36 de 38

1

¿Cómo es recomendable incluir un módulo de cálculos geométricos definido por el propio programador?

Selecciona una de las siguientes respuestas posibles:

  • 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"

Explicación

Pregunta 37 de 38

1

¿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").

Selecciona una de las siguientes respuestas posibles:

  • A, B y C

  • A, B, C y D

  • Ninguna de las otras respuestas

  • B y C

Explicación

Pregunta 38 de 38

1

¿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

Selecciona una de las siguientes respuestas posibles:

  • A y C

  • A, B, C y D

  • Ninguna de las otras respuestas

  • A, B y C

Explicación