Registros en C++
Registros en C++
Registros en C++
Para resolver este problema C provee de un tipo de dato especial llamado estructura.
tipo campo1;
tipo campo2;
}lista de variables;
Ejemplo 1:
struct {
int matricula;
char nombre[30];
int edad;}alumno;
Ejemplo 2:
struct DIREC{
char nombre[35];
char tele[20];
} ;
Ejemplo 3.
struct empleado{
char nombre[25];
char apellido[25];
char telefono[12];
char eps[25];
}reg;
Son los campos del registro a quienes se les va a asignar, inicializar, capturar, etc y de
esta manera a los campos se les considera como variables normales.
Para indicar a “C” durante cualquier proceso que la variable a utilizar es un campo de
una estructura se utiliza el siguiente formato.
nomregistro.nombredelcampo
Ejemplo 1.
scanf("%d",&alumno.matricula);
Ejemplo2:
cout<< reg.cedula;
#include <cstdlib>
#include <iostream>
#include <stdio.h>
struct {
int matricula;
char nombre[30];
int edad;}alumno;
// area de operaciones
// area de salida
Las operaciones mas elementales con los campos de una estructura incluyen captura e
inicialización.
Almacenar en un arreglo de tipo registro los datos principales de un alumno del poly (código,
nombre, fecha de nacimiento, altura, sexo, fecha de ingreso), calcular su edad al día actual
almacenarla en un campo nuevo llamado edad , agrégale la línea para calcular la edad?
#include <stdio.h>
#include <stdlib.h>
struct estruc_edad{
char fec_nac[10], fec_act[10];
int edad;
};
struct estructura_alumno{
char cod[9], nombre[45], fec_ing[9], sexo;
float alt;
struct estruc_edad edad;
};
struct estructura_alumno alumno;
printf("nombre\n");
gets(alumno.nombre);
printf("codigo: \n");
gets(alumno.cod);
printf("fecha de nacimiento.\n");
gets( alumno.edad.fec_nac);
printf("fecha de ingreso: \t");
gets(alumno.fec_ing);
printf("altura: \n");
scanf("%f",&alumno.alt);
printf("sexo: \n");
scanf("%s", &alumno.sexo);
printf("fecha actual: \n");
scanf( "%s", alumno.edad.fec_act);
printf("edad : %d anos \n", alumno.edad.edad);
system("PAUSE");
return 0;
}