C++ apuntes

Solo disponible en BuenasTareas
  • Páginas : 6 (1486 palabras )
  • Descarga(s) : 0
  • Publicado : 21 de noviembre de 2010
Leer documento completo
Vista previa del texto
REGISTROS

En algunas ocasiones cuando se realiza un programa se requieren datos de distinto tipo y de diferentes cosas, por mencionar un ejemplo, cuando se hace una factura, se tienen datos del cliente que compro el artículo, de los productos que se están vendiendo y quizás del empleado que esta realizando la venta, en este tipo de programas se tendría que declarar demasiadas variables,entonces, aquí se vuelve práctico es uso de una estructura que contenga la información del cliente, otra para el producto y una más para el empleado. Una estructura es una agrupación de datos relacionado a una misma entidad, entendiéndose por entidad cualquier sujeto. Los datos de una estructura pueden ser del mismo o de diferente tipo. Las estructuras son equiparadas con los registros que hay unarchivo o en una base de datos. Una estructura puede ser global o local, al igual que una variable, es global cuando es declarada fuera de toda función y local cuando esta definida dentro de alguna. Existen 3 tipos de estructuras:

a)Simples
b)Anidadas
c)Arreglos

Los componentes de toda estructura son sus datos y el nombre que la identifica, la estructura es manipulada por un alías (variable)dentro del programa, a través del alías es que se permite el acceso.
ESTRUCTURAS SIMPLES
Las estructuras simples sólo contienen información de una misma entidad, por ejemplo, la estructura de un alumno es simple, porque únicamente contendrá información del mismo y no de sus maestros o de las materias, el formato de una estructura simple es la siguiente.

PSEUDO CÓDIGO CÓDIGO
Estructura Alumno
{TipoDato Dato1;
TipoDato Dato2;


TipoDato DatoN;
} Alías (Variable);


Struct Alumno
{
int NumAlumno;
char nombre[35];
float promedio;
}Inf;
Para acceder a cualquier dato de una estructura simple se debe colocar primero el alías que la manipula seguido un punto y finalizando con el elemento que se requiere, tal como se muestra.
Alías.Elemento
El siguiente programa muestracomo se organiza la información dentro de una estructura, así como el acceso a cada uno de sus elementos.

struct Computadora
{
char marca[25], modelo[15];
int existencia;
float precio, descuento;
}pc;

main()
{
printf(“\n MARCA: ”);
scanf(“%s”,&pc.marca);
printf(“\n MODELO: ”);
scanf(“%s”,&pc.modelo);
printf(“\n UNIDADES EN EXISTENCIA: ”);
scanf(“%d”,&pc.existencia);
printf(“\nPRECIO:”);
scanf(“%f”,&pc.precio);
pc.descuento=pc.precio*0.15;
printf(“\n EL DESCUENTO DE LA COMPUTADORA : %s “, pc.marca);
printf(“MODELO: %s ES DE: %f ”, pc.modelo, pc.descuento);
return 0;
}
Como puede apreciarse en la declaración, la estructura se define con la palabra struct seguido el nombre de la misma, en este caso la estructura se denominó Computadora y esta compuesta por los datosmarca, modelo, existencia, precio y descuento, puede notar que hay datos de tipo cadena, entero y real, al final de la declaración se indica el alías que la manipulara, en este caso pc, para finalizar la declaración se debe escribir “;”. En este caso la estructura es global debido a que esta definida fuera de toda función.
Para tener el acceso a cualquier dato se debe primero hacer referencia alalías y posteriormente al elemento seguido del punto, en el programa para hacer referencia a la marca primero se puso la palabra pc que es el alías, después el “.” y posteriormente a la marca.
pc.marca
Los alias pueden ser declarados seguidos de la llave de terminación de la estructura, no limitándose a uno sólo si no que pueden ser declarados varios para la misma, cada uno de ellos contendráinformación distinta.
struct Computadora
{
char marca[25], modelo[15];
int existencia;
float precio, descuento;
}pc1, pc2, … pcn;
Cuando se define más de un alías para una estructura, cada uno de ellos contiene información diferente aunque todos manipulan a la misma, es una forma de ahorrar código puesto que se tienen los mismos datos pero asignados a un alías distinto. Si se quiere acceder a...
tracking img