Practica sobre tipos enumerados, typedef y struct

Anuncio
Practica sobre tipos enumerados, typedef y struct
1. Dada la siguiente especificación:
TIPO REGISTRO ASIGNACIÓN =
REAL TRANSPORTE;
REAL COMIDA;
REAL VACACIONES;
FREGISTRO
TIPO REGISTRO DEDUCCIÓN =
REAL SEGURO;
REAL AH; //Ahorro Habitacional
FREGISTRO
REGISTRO EMPLEADO =
ENTERO CODIGO;
ENTERO ACTIVO;
CARACTER SEXO;
REAL SUELDO_HORA;
ENTERO HORAS_TRAB;
ASIGNACIÓN AS;
DEDUCCIÓN DE;
FREGISTRO
Realice un programa que permita:
a) Declarar una variable de tipo EMPLEADO.
b) Inicializar cada campo del registro.
c) Calcular el sueldo de un empleado activo, dado que ST = (SH * HT) + A – D, siendo las
variables las siguientes: ST = Sueldo Total, SH = Sueldo por Hora, HT = Horas Trabajadas, A =
Asignaciones, D = Deducciones
2.
a)
b)
c)
d)
Usando tipos enumerados, arreglos y estructuras, dé definiciones de tipos para:
Días de la semana
Deportes en equipos
Meses del año
Defina arreglos de cada uno de estos tipos enumerados, inicializando los dias de la semana y meses
de nacimiento de sus parientes.
e) Escriba un trozo de código en c que determine cuantos nacen un lunes y cuantos en enero.
3. Explique el significado de las siguientes declaraciones en lenguaje C (coloque comentarios):
#define
#define
#define
#define
#define
NUM_SEX
NUM_EDO
LON_NOM
MIN_EDD
MAX_EDD
2
4
15
18
65
typedef enum {
Masculino, Femenino
} SEXO;
typedef enum {
Soltero, Casado, Viudo, Divorciado
} ESTADO;
typedef char NOMBRE[LON_NOM];
typedef short EDAD;
typedef struct {
NOMBRE
apellido;
NOMBRE
nombre;
EDAD
edad;
SEXO
sexo;
ESTADO
estado;
} EMPLEADO;
const char *sexo[NUM_SEX]
= {"Masculino","Femenino"};
const char *estado[NUM_EDO] = {"Soltero","Casado","Viudo","Divorciado"};
4. Realizar un programa que pregunte al usuario su número de cédula de identidad, primer nombre y
primer apellido, guardando estos datos en una variable de tipo estructurado. El programa debe
imprimir un mensaje con la información leída. La longitud máxima del nombre es de 12 caracteres,
al igual que el apellido. La cédula de identidad es un número entero.
5. Realizar un programa que permita al usuario ingresar siete fechas en formato DD/MM/AAAA y
luego presentarlas ordenadas ascendentemente. Para ello debe definir el tipo estructurado FECHA y
usar un arreglo con elementos de este tipo. Ayuda: En lenguaje C, si s1 y s2 son dos variables del
mismo tipo estructurado (struct), es válido hacer asignaciones del tipo s1=s2, lo cual copia todo el
contenido de la variable s2 en la variable s1.
6. Defina el tipo de datos FichaComUniv, el cual puede almacenar los datos de cualquiera de los
miembros de la Comunidad universitaria. Existen cuatro clases de miembros universitarios:
Estudiantes, Profesores, Obreros y Empleados. Para todos se almacenan datos personales como:
cédula, nombres, apellidos, edad, teléfono, dirección, sexo, número de hijos. Pero hay algunos
datos que son propios a cada clase, entre ellos:
• Para los estudiantes: carnet, carrera, número de créditos aprobados, número de créditos inscritos,
número de créditos reprobados, número de trimestres inscritos, índice académico
• Para los profesores: departamento académico al que pertenece, fecha de ingreso a la universidad,
cargo desempeñado (instructor, asistente, agregado, asociado, titular), dedicación (convencional,
integral o exclusiva), sueldo.
• Para los obreros: empresa contratista a la que pertenece, sueldo, categoría (I,II,III,IV,V,VI)
• Para los empleados: departamento administrativo al que pertenece, fecha de ingreso, sueldo, cargo.
Realice un programa que permita llenar los datos de una ficha. Use menues para seleccionar tipos
enumerados.
7. Proponga estructuras de datos que simulen las siguientes situaciones:
a) Información académica de un estudiante
b) Datos del mundial para una quiniela
c) Datos para juegos con niveles de preferencia
d) Dado los resultados de una quiniela calcule la puntuacion si: un score acertado son 3 puntos y
un resultado acertado representa 1 punto. Suponga una variable de tipo quiniela que tiene
todos los resultados de la fase eliminatoria.
Descargar