Pag. 1 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== ------------------------------------------------------------------------------- POO PROGRAMACION ORIENTADA A OBJETOS EN C++ 3 . 1 Debe respetarse el orden de la declaracion de los cam- pos de un registro durante la captura a) Verdadero b) Falso 3 . 2 Un registro es una estructura de datos homogeneos a) Verdadero b) Falso 3 . 3 Si se declara ... struct x { int clave; float sueldo; }; struct x y; Como se imprimen los datos del registro? a) cout << x; b) cout << x.clave << x.sueldo; c) cout << y; d) cout << y.clave << y.sueldo; 3 . 4 Si se declara ... struct x { int clave; float sueldo; }; struct x a, b; Como se copian los datos del registro a al b ? a) b=a; b) a=b; c) a.clave=b.clave; a.sueldo=b.sueldo; d) Ninguna de las anteriores 3 . 5 Si se declaran 2 registros del mismo tipo, Pueden igua- larse directamente utilizando el operador = a) Verdadero b) Falso 3 . 6 Puede declararse una estructura dentro de otra a) Verdadero b) Falso 3 . 7 Puede enviarse un registro como parametro o argumento Pag. 2 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== a una subrutina a) Verdadero b) Falso 3 . 8 Si se declara ... struct x { int clave; float sueldo; }; struct x y; Como se captura la clave del registro? a) cin >> x; b) cin >> x.clave; c) cin >> clave; d) cin >> y.clave; 3 . 9 Un uso apropiado de una estructura es almacenar una lista de precios de articulos a) Verdadero b) Falso 3 . 10 El principal proposito de declarar un tipo de estructura es ... a) Reservar espacio de memoria b) Definir el formato de la estructura c) Definir la lista de los elementos de la estructura d) Definir un nuevo tipo de dato 3 . 11 Para que se utiliza la funcion sizeof() ? a) Para calcular el tamano de una variable en bits b) Para reservar espacio de memoria para una variable c) Para calcular el tamano de una estructura en bytes d) Para calcular el tamano de una variable en bytes 3 . 12 Si se declara ... struct x { int clave; float sueldo; }; Es correcta la declaracion: struct x y = {5, 1230.55}; a) Verdadero b) Falso 3 . 13 Si se declara ... struct x { int clave; Pag. 3 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== float sueldo; }; Es correcta la declaracion: struct x y = {5, 1,230.55}; a) Verdadero b) Falso 3 . 14 Se pueden inicializar los campos de un registro desde su declaracion a) Verdadero b) Falso 3 . 15 Si se declara ... struct x { int clave; char nombre[30], float sueldo; }; Es correcta la declaracion: struct x y = {5, "Maria", 1230.55}; a) Verdadero b) Falso 3 . 16 Si se declara ... struct tipo_registro { int clave; char nombre[30], float sueldo; }; struct tipo_registro Empleado, Secretaria; Es correcta la sentencia: if(Empleado==Secretaria) cout << "Iguales; a) Verdadero b) Falso 3 . 17 Una estructura proporciona un grupo de ... a) elementos del mismo tipo de dato b) datos relacionados que pueden ser de diferente tipo c) enteros con nombres definidos por el usuario d) variables 3 . 18 Los arreglos se pasan automaticamente por referencia a una subrutina a) Verdadero b) Falso 3 . 19 Una estructura solo debe declararse global a) Verdadero b) Falso Pag. 4 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== 3 . 20 Cual es la funcion utilizada para convertir una cadena a entero? a) atol() b) itoa() c) atoi() d) ltoa() 3 . 21 Cual es la funcion utilizada para convertir un entero a cadena? a) atol() b) itoa() c) atoi() d) ltoa() 3 . 22 Cual es la funcion utilizada para convertir una cadena a entero largo? a) atol() b) itoa() c) atoi() d) ltoa() 3 . 23 Cual es la funcion utilizada para convertir un entero largo a cadena? a) atol() b) itoa() c) atoi() d) ltoa() 3 . 24 Cual es la funcion utilizada para convertir una cadena a real? a) atol() b) atof() c) atoi() d) fcvt() 3 . 25 Cual es la funcion utilizada para convertir un dato real a cadena? a) atol() b) atof() c) atoi() d) fcvt() 3 . 26 Encabezado(s) necesario(s) para usar la funcion atof() a) stdlib.h b) math.h Pag. 5 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== c) math.h y stdlib.h d) stdio.h y stdlib.h 3 . 27 Encabezado(s) necesario(s) para usar la funcion atoi() a) stdlib.h b) math.h c) math.h y stdlib.h d) stdio.h y stdlib.h 3 . 28 Encabezado(s) necesario(s) para usar la funcion itoa() a) stdlib.h b) math.h c) math.h y stdlib.h d) stdio.h y stdlib.h 3 . 29 Si se declara int *A, B; A=&B; Entonces A almacena la direccion de la variable B a) Verdadero b) Falso 3 . 30 Si se declara int *A=13, B=5; *A = &B; Que imprime lo siguiente? cout << *A; a) 5 b) 0xFF34 c) 13 d) Nada es un error 3 . 31 Si se declara int *A, B=5; *A = 13; Que imprime lo siguiente? cout << *A; a) 5 b) 0xFF34 c) 13 d) Nada es un error 3 . 32 Si se declara int *A=13, B=5; A = &B; Pag. 6 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== Que imprime lo siguiente? cout << *A; a) 5 b) 0xFF34 c) 13 d) Nada es un error 3 . 33 Si se declara int *A, B=5; A = &B; *A = 13; Que imprime lo siguiente? cout << *A; a) 5 b) 0xFF34 c) 13 d) Nada es un error 3 . 34 Si se declara int *A, B=5; A = &B; A = 13; Que imprime lo siguiente? cout << *A; a) 5 b) 0xFF34 c) 13 d) Nada es un error 3 . 35 Cuando se envia un arreglo a una subrutina, Que es lo que se envia realmente? a) Todo el arreglo b) Solamente el primer valor c) La direccion de la primer celda d) El tamano del arreglo 3 . 36 Existe posibilidad de que un procedimiento modifique el contenido de las celdas de un arreglo a) Verdadero b) Falso 3 . 37 No puede enviarse una estructura a una subrutina a) Verdadero b) Falso Pag. 7 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== 3 . 38 No puede enviarse una estructura por referencia a una subrutina a) Verdadero b) Falso 3 . 39 No puede enviarse un arreglo de estructuras a una sub- rutina a) Verdadero b) Falso 3 . 40 Una subrutina que recibe como argumento una direccion de una variable debe tener declarado un apuntador a) Verdadero b) Falso 3 . 41 No es posible tener arreglos de apuntadores a) Verdadero b) Falso 3 . 42 Si se declara ... float A[100], *y; y=A; Como se captura el arreglo mediante el apuntador a) for(i=0; i<100; i++) scanf("%f", &y); b) for(i=0; i<100; i++) scanf("%f", y++); c) for(i=0; i<100; i++) scanf("%f", y); d) for(i=0; i<100; i++) scanf("%f", *(y+i)); 3 . 43 Si se declara ... float A[100], *y; Como se inicializa el apuntador con la direccion del arreglo ? a) *y = &A; b) y = &A; c) y = *A; d) y = A; 3 . 44 Es correcta la siguiente declaracion? float A[100]; float *y = A; a) Verdadero b) Falso 3 . 45 Es correcta la siguiente declaracion? float A[100]; Pag. 8 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== float *y = &A; a) Verdadero b) Falso 3 . 46 Es correcta la siguiente declaracion? float A[100]; int *y; y = A; a) Verdadero b) Falso 3 . 47 Si se declara ... float A[100], *y; y=A; Como se captura el arreglo mediante el apuntador ? a) for(i=0; i<100; i++) cin >> y; b) for(i=0; i<100; i++) cin >> *y+i; c) for(i=0; i<100; i++) cin >> y+i; d) for(i=0; i<100; i++) cin >> *(y+i); 3 . 48 Si se declara ... float A[100], *y; y=A; Como se captura el arreglo mediante el apuntador ? a) for(i=0; i<100; i++) cin >> y; b) for(i=0; i<100; i++) cin >> *y+i; c) for(i=0; i<100; i++) cin >> y+i; d) for(i=0; i<100; i++) cin >> *y++; 3 . 49 Si se declara ... float A[100], *y; y=A; Como se imprimen los elementos del arreglo mediante el apuntador? a) for(i=0; i<100; i++) cout << y; b) for(i=0; i<100; i++) cout << *y+i; c) for(i=0; i<100; i++) cout << y+i; d) for(i=0; i<100; i++) cout << *y++; 3 . 50 Si se declara ... float A[100], *y; y=A; Como se imprimen los elementos del arreglo mediante el apuntador ? a) for(i=0; i<100; i++) cout << y; Pag. 9 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== b) for(i=0; i<100; i++) cout << *y+i; c) for(i=0; i<100; i++) cout << y+i; d) for(i=0; i<100; i++) cout << *(y+i); 3 . 51 Es correcta la siguiente declaracion? float A[100]; float *y; y = A; a) Verdadero b) Falso 3 . 52 Es correcta la siguiente declaracion? float A[100]; float *y; y = &A; a) Verdadero b) Falso 3 . 53 Es correcta la siguiente declaracion? float A[100]; int *y; y = A; a) Verdadero b) Falso 3 . 54 Se puede capturar desde el teclado la direccion con que se desea inicializar un apuntador? Es decir, la direccion a la que se desea que apunte a) Verdadero b) Falso 3 . 55 Si se declara ... int *w; Como se capturaria desde el teclado la direccion con la que se desea inicializar el apuntador? a) scanf("%d", &w); b) scanf("%x", &w); c) scanf("%X", w); d) No se puede realizar dicha operacion 3 . 56 Todos los apuntadores ocupan 2 bytes a) Verdadero b) Falso 3 . 57 Si se declara ... Pag. 10 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== int *x; Que imprime cout << sizeof(x); a) 1 b) 2 c) 4 d) 8 3 . 58 Si se declara ... float *x; Que imprime cout << sizeof(x); a) 1 b) 2 c) 4 d) 8 3 . 59 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se inicializa el apuntador con la direccion del registro ? a) x = Alumno; b) x = &Alumno; c) x = *Alumno; d) x = *(Alumno); 3 . 60 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se inicializa el apuntador con la direccion del registro ? a) x = Alumno; b) x = &*Alumno; c) x = *Alumno; d) Ninguna de las anteriores 3 . 61 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se captura la clave del registro por medio del apuntador ? a) gets( x -> clave ); b) cin >> *x.clave; Pag. 11 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== c) cin >> x.clave; d) Ninguna de las anteriores 3 . 62 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se captura la clave del registro por medio del apuntador ? a) gets( x -> clave ); b) cin >> *x.clave; c) cin >> x.clave; d) cin >> x->clave; 3 . 63 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se captura el nombre del registro por medio del apuntador ? a) gets( *x -> nombre ); b) gets( *x.clave ); c) gets( x.clave ); d) Ninguna de las anteriores 3 . 64 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se captura el nombre del registro por medio del apuntador ? a) gets( *x -> nombre ); b) gets( *x.clave ); c) gets( x.clave ); d) gets( x -> nombre); 3 . 65 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se imprime el nombre del registro por medio del apuntador ? a) printf("%c", x -> nombre); b) printf("%c", *x -> nombre); c) printf("%d", x -> nombre); Pag. 12 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== d) Ninguna de las anteriores 3 . 66 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; Como se imprime el nombre del registro por medio del apuntador ? a) printf("%c", x -> nombre); b) printf("%c", *x -> nombre); c) printf("%s", x -> nombre); d) printf("%s", &x -> nombre); 3 . 67 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; x = &Alumno; Como se imprime la direccion del registro por medio del apuntador ? a) cout << &x; b) cout << *x; c) cout << x; d) Ninguna de las anteriores 3 . 68 Si se declara ... struct tipo_registro { int clave; char nombre[30]; }; struct tipo_registro Alumno, *x; x = &Alumno; Como se imprime la direccion donde se encuentra el apuntador ? a) cout << &x; b) cout << *x; c) cout << x; d) Ninguna de las anteriores 3 . 69 La funcion itoa() tambien puede utilizarse para hacer conversiones entre sistemas numericos a) Falso b) Verdadero 3 . 70 Cual es la sintaxis de la funcion itoa() ? a) itoa( entero, cadena, raiz); b) itoa( cadena, entero, raiz); Pag. 13 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== c) itoa( cadena, entero); d) itoa( entero, cadena); 3 . 71 Que imprime lo siguiente? int numero=5; char *cadena="Tec Laredo"; itoa(numero, cadena, 10); cout << numero; a) 0 b) a c) 5 d) Tec Laredo 3 . 72 Que imprime lo siguiente? int numero=5; char *cadena="Tec Laredo"; itoa(numero, cadena, 10); cout << cadena; a) 0 b) a c) 5 d) Tec Laredo 3 . 73 Que imprime lo siguiente? int numero=5; char *cadena="Tec Laredo"; itoa(numero, cadena, 2); cout << cadena; a) 0 b) c c) 5 d) Ninguno de los anteriores 3 . 74 Que imprime lo siguiente? int numero=5; char *cadena="Tec Laredo"; itoa(numero, cadena, 2); cout << cadena; a) 0 b) c c) 5 d) 101 3 . 75 La funcion itoa( numero, cadena, 2); .... a) Convierte una cadena a entero Pag. 14 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== b) Convierte un entero binario a cadena c) Convierte un decimal a cadena (representada en binario) d) Ninguna de las anteriores 3 . 76 Si se declara ... int numero = 233; char *cadena; Como se convierte el numero a binario? a) No se puede hacer la conversion b) Con itoa( numero, cadena, 2); c) Con itoa( cadena, numero, 2); d) Con atoi( numero, cadena, 2); 3 . 77 Cual de las siguientes funciones se puede utilizar para hacer conversiones entre sistemas numericos? a) atoi() b) ltoa() c) fcvt() d) Ninguna de las anteriores 3 . 78 Cual de las siguientes funciones se puede utilizar para hacer conversiones entre sistemas numericos? a) itoa() b) atoi() c) atol() d) fcvt() 3 . 79 Que imprime lo siguiente? int numero = 32768; char *cadena = "Tec Laredo"; itoa(numero, cadena, 10); cout << cadena; a) Nada, es un error b) 0 c) 32768 d) Un numero negativo 3 . 80 Cual es el significado textual de la funcion atoi() ? a) ASCII to integer b) integer to ASCII c) Convertir entero a cadena d) Ninguna de las anteriores 3 . 81 Cual es el significado textual de la funcion itoa() ? a) ASCII to integer Pag. 15 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== b) integer to ASCII c) Convertir entero a cadena d) Ninguna de las anteriores 3 . 82 Cual es el significado textual de la funcion atol() ? a) ASCII to long integer b) long integer to ASCII c) Convertir entero largo a cadena d) Ninguna de las anteriores 3 . 83 Cual es el significado textual de la funcion ltoa() ? a) ASCII to long integer b) long integer to ASCII c) Convertir entero largo a cadena d) Ninguna de las anteriores 3 . 84 Cual es el significado textual de la funcion fcvt() ? a) ASCII to long integer b) long integer to ASCII c) Convertir entero largo a cadena d) Float conversion to text 3 . 85 Cual es la sintaxis de la funcion fcvt() ? a) cadena = fcvt( num_real, digitos, &dec, &signo); b) cadena = fcvt( digitos, num_real, &dec, &signo); c) cadena = fcvt( num_real, digitos, &signo, &dec); d) cadena = fcvt( digitos, num_real, &signo, &dec); 3 . 86 Para que envia por referencia 2 argumentos la funcion fcvt() ? a) Para controlar su direccion b) Para controlar su valor c) Para que la funcion "devuelva" mas de 1 resultado d) Ninguna de las anteriores 3 . 87 Cuales son los argumentos que envia por referencia la funcion fcvt() ? a) El numero real y la cadena b) La cadena y los digitos c) Los digitos y el signo d) La posicion del punto decimal y el signo 3 . 88 En la funcion cadena = fcvt(num, ndig, &dec, &signo); Que significa ndig ? a) La cant. de digitos del numero que desea convertir Pag. 16 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== b) La cant. de digitos deseados despues del punto decimal c) La cant. de digitos de la parte entera del numero d) La cant. de digitos que contendra la cadena 3 . 89 En la funcion cadena = fcvt(num, ndig, &dec, &signo); Que significa la variable dec ? a) La cant. de digitos del numero que desea convertir b) La cant. de digitos deseados despues del punto decimal c) La cant. de digitos de la parte entera del numero d) La cant. de digitos que contendra la cadena 3 . 90 En la funcion cadena = fcvt(num, ndig, &dec, &signo); Que significa la variable dec ? a) La cant. de digitos del numero que desea convertir b) La cant. de digitos deseados despues del punto decimal c) La posicion del punto decimal en la cadena d) La cant. de digitos que contendra la cadena 3 . 91 Si se declara float num=123.45; char *cadena; int dec,signo; cadena = fcvt(num, 5, &dec, &signo); Que imprime cout << signo; a) 1 b) 0 c) + d) - 3 . 92 Si se declara float num = -123.45; char *cadena; int dec,signo; cadena = fcvt(num, 5, &dec, &signo); Que imprime cout << signo; a) 1 b) 0 c) + d) - 3 . 93 Si se declara float num = -123.45; char *cadena; int dec,signo; cadena = fcvt(num, 5, &dec, &signo); Que imprime cout << dec; a) 0 b) 1 Pag. 17 Fecha: 10/ENE/2009 Hora: 14:53 hrs. INSTITUTO TECNOLOGICO DE NUEVO LAREDO ING. EN SISTEMAS COMPUTACIONALES ING. BRUNO LOPEZ TAKEYAS <<< P R E G U N T A S >>> =============================================================================== Unidad Folio Pregunta =============================================================================== c) 3 d) 5 3 . 94 Se puede inicializar un apuntador con un valor desde su declaracion a) Verdadero b) Falso 3 . 95 Se puede usar la funcion itoa() para hacer conversiones entre sistemas numericos a) Verdadero b) Falso 3 . 96 Se puede usar la funcion ltoa() para hacer conversiones entre sistemas numericos a) Verdadero b) Falso 3 . 97 Es correcta la siguiente declaracion ... int *y=5; a) Verdadero b) Falso 3 . 98 Es correcta la siguiente declaracion ... int x, *y=&x; a) Verdadero b) Falso =============================================================================== TOTAL: 98 PREGUNTAS