Download - Arreglos
![Page 1: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/1.jpg)
ArreglosIng. Paulo Guerra
Sistemas12/04/2010
![Page 2: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/2.jpg)
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.
![Page 3: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/3.jpg)
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
![Page 4: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/4.jpg)
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í:
![Page 5: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/5.jpg)
![Page 6: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/6.jpg)
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];
![Page 7: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/7.jpg)
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
![Page 8: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/8.jpg)
Solución de temperaturas con Arrays
![Page 9: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/9.jpg)
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]
![Page 10: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/10.jpg)
#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
![Page 11: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/11.jpg)
#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
![Page 12: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/12.jpg)
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
![Page 13: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/13.jpg)
#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
![Page 14: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/14.jpg)
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.
![Page 15: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/15.jpg)
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).
![Page 16: Arreglos](https://reader036.vdocuments.co/reader036/viewer/2022082513/557b3c7fd8b42a16488b50ed/html5/thumbnails/16.jpg)
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