Download - Arreglos
ArreglosIng. Paulo Guerra
Sistemas12/04/2010
Objetivos de la ClaseAprender la definición de un arreglo.Saber la forma de declarar los arreglo en el
lenguaje C.Comprender el uso de los arreglos y sus
aplicaciones.Aplicar los conocimientos adquiridos en
ejercicios prácticos.
Arreglos unidimensionales
Definición: Un arreglo (array) es una colección de datos del mismo tipo que se referencian por un mismo nombre, cuyos datos llamados “elementos” se distinguen entre sí con índices.
elemento 0 elemento 1 elemento n-1
Problema sin arreglosPero ¿qué quiere decir esto y para qué lo
queremos?. Pues bien, supongamos que somos un metereólogo y queremos guardar en el ordenador la temperatura que ha hecho cada hora del dia. Para darle cierta utilidad al final calcularemos la media de las temperaturas. Con lo que sabemos hasta ahora sería algo así:
Arreglos unidimensionales• Antes de poder usar un arreglo debemos
declararlo mediante la forma general:
Donde:tipo, declara el tipo de cada elemento del mismo. nombre_variable, es el nombre del array.tamaño, indica el número de elementos que tendrá el
array.
tipo nombre_variable[tamaño];
A continuación se declara un array pago con 8 elementos de tipo int:
int pago [8] ;Otros Ejemplosfloat notas[17]; char letras[28]; double precios[20];
Ejemplos de Declaración
Solución de temperaturas con Arrays
Para acceder a cada uno de los elementos debemos usar índices. El primer valor de los índices comienza siempre por cero.
Entonces, los elementos del array pago serían
Acceso a Elementos
12 18 102 1 172 30 5 7pago:
pago[1]
pago[2]
pago[3]
pago[4]
pago[5]
pago[6]
pago[7]
pago[0]
#include <stdio.h>int main(){ int pago[6], suma;
printf("la siguiente sentencia asigna pago[0]=10 \n");pago[0]=10;printf("la siguientes sentencia imprime el valor del elemento[0]: \n");printf("pago [0] es = %d",pago[0]);
printf("\nla siguiente sentencia asigna pago[5]=75: \n");pago[5]=75;printf("la siguientes sentencia imprime la suma de los 2 valores: \n");
suma=pago[0]+pago[5];printf("la suma de pago[0]+pago[5] = %d",suma);
}
Ejemplo 1
#include <stdio.h>void main(){ int pago[6], indice;
for (indice=0;indice<6;indice++){
printf ("Ingresar elemento con indice[%d] ",indice); scanf("%d",&pago[indice]);
}
for (indice=0;indice<6;indice++){
printf ("\nElemento [%d]= %d ",indice,pago[indice]);
}}
Ejemplo 2
Los arrays se inicilaizan en el momento de declararlos.
La forma general de inicilizar un array es similar a las de otras variables así. tipo nombre[tamaño]={ lista_valores};
Ejemplo para inicializar la variable pagos int pagos[6]={2,50,60,70,9,12};
Inicialización de Arrays
#include <stdio.h> void main() {
printf("Inicializa el arreglo pagos con 12,1,5,7,8,50"); int pago[6]={12, 1, 5, 7 , 8, 50};
printf("\nLos valores de pagos son: "); for (int indice=0;indice<6;indice++) { printf ("\nElemento [%d]= %d ",indice,pago[indice]); } }
Ejemplo 3
Punteros a arraysLos punteros y los arreglos están
íntimamente relacionados.Para que un puntero apunte a un array se
puede hacer de dos formas:1. Una es apuntando al primer elemento del
array.
2. El puntero apunta a la dirección del primer elemento. Otra forma equivalente, pero mucho más usada es:
Con esto también apuntamos al primer elemento del array porque el nombre de un arreglo es también un puntero que apunta al primer elemento.
Nota: el puntero tiene que ser del mismo tipo que el array (en este caso int).
Bibliografíahttp://c.conclase.net/curso/index.php?cap=01
0#iniciohttp://www.elrincondelc.com/cursoc/cursoc10
.htmlhttp://www.modelo.edu.mx/univ/virtech/progr
ac/carray.htm