Parcial III 2009-2010A

Anuncio
UNIVERSIDAD DEL ISTMO
Programación Estructurada – Tercer Examen Parcial – 25/ENE/10
M.I.A Daniel Alejandro García López
Alumno: ___________________________________________________
Evaluación Escrita:
PORCENTAJE 80% CALIF_______
Taller de programación:
PORCENTAJE 20% CALIF_______
Calificación final:______________________________________
_____________________________
I.- Verifique y corrija (lógica, sintáctica y semánticamente) el siguiente fragmento
de código en lenguaje ANSI C. (16% máximo: 2% menos por cada error no
corregido ).
/*Programa que lee los datos de una persona, y
los imprime en pantalla.*/
#include<stdio.h>
/* Definición datos personales */
struct data {
char nombre[10];
char direccion;
int edad;
};
/* Función que imprime datos relacionados con
una persona */
void imprime( struct datos persona)
{
printf(''Nombre: %s \n'',pers.Nombre);
printf(''Dirección: %s \n'',pers.Direccion);
printf(''Edad: %d \n'',pers.Edad);
}
/* Función que captura los datos relacionados con
una persona y los almacena en la variable pasada
como parámetro de referencia */
void captura( struct datos *p)
{
printf("De el nombre: ");
scanf("%s",(*p).nombre);
printf("De la dirección: ");
scanf("%s",(*p).direccion);
printf("De la edad: ");
scanf("%d",(*p).edad);
}
void main()
{
struct datos pers;
imprime(&pers);
pers=captura(pers);
}
I.- Conteste correctamente(lógica, sintáctica y semántica en el lenguaje ANSI C).
1.
Son las variables que almacenan direcciones de memoria (2%).
2.
Es la declaración correcta de un apuntador de tipo flotante en C, que apunta inicialmente a la
variable Suma de tipo flotante (2%).
3.
Son las sentencias correctas para reservar 20 espacios de memoria dinámica de tipo entero en
una variable llamada cantidades (3%).
4.
Es la declaración correcta de una estructura llamada usuario para almacenar el
identificador(valor máximo 200,000), login (de tamaño máximo almacenable 20), password(de tamaño
máximo almacenable 15), identificadorDeRol(valor máximo 1000),fechaDeAlta(de tamaño 10). Declare
el tipo de dato correcto, y minimo(4%)
5.
Es la instrucción correcta para crear el alias usr para la estructura usuario(2%).
6.
Es la declaración correcta para reservar espacios de memoria dinámica para almacenar 18
bloques de tipo usr en una variable llamada listaDeUsuarios (5%)
7.
Realice una función que reciba un arreglo de usr y lea sus atributos correspondientes a cada
usuario, el tamaño del arreglo es dado como parámetro (10%).
8.
Realice una función sin parámetros que retorne un tipo usr, dentro de la función capture los
valores de los campos (10%)
9.
Redimensione la variable listaDeUsuarios para que pueda almacenar 54 estructuras, sin perder
la información contenida.(10%)
10.
Declare la variable funDinamica que apunte a la función del ejercicio 8, y escriba la sentencia
para llamar a la función por medio de esta variable. (6%)
11.
Es la declaración correcta para reservar espacios de memoria para almacenar una tabla de
tamaño desconocido (M x N) en tiempo de compilación, cada localidad de memoria debe poder
almacenar nombres con longitud máxima de 30 caracteres. (10%).
Descargar