guia de programacion

Páginas: 15 (3726 palabras) Publicado: 24 de mayo de 2013
Si por ejemplo, se quiere crear un array de números reales y su tamaño es una constante represennumeros
[ 5 1
numeros [ 9 1
numeros [ 6 ]
tada por un parámetro
#define N 20
float vector[N];
Para acceder al elemento 3 y leer un valor de entrada:
scanf ( "%f 'I, &vector [ 2 1 ) ;
Precaución
C no comprueba que los índices del array están dentro del rango definido. Así, por ejemplo, sepuede intentar acceder a numeros [ 12 1 y el compilador no producirá ningún error, lo que puede
producir un fallo en su programa, dependiendo del contexto en que se encuentre el error.
8.1.2. Subíndices de un array
El índice de un array se denomina, con frecuencia, suhindice del arruy. El término procede de las
matemáticas, en las que un subíndice se utiliza para representar un elementodeterminado.
numero s equivale a
numeros equivule a
numeros [O I
numeros I3 I
El método de numeración del elemento i-ésimo con el índice o subíndice i-l se denomina indexución
husada en cero. Su uso tiene el efecto de que el índice de un elemento del array es siempre el mismo que
el número de s de el elemento inicial a I O I a ese elemento. Por ejemplo, a [ 3 I está a 3 pasos
o posiciones delelemento a 1 O 1 . La ventaja de este método se verá de modo más evidente al tratar las
relaciones entre arrays y punteros.
-
262 Programación en C. Metodología, algoritmos y estructura de datos
Ejemplos
int edad[5] ; Array edad contiene 5 elementos: el primero, edad [ O 1 y
el último, edad [ 4 1 .
Declara 2 arrays de enteros.
Declara un array de 25 elementos float.
Declara un array de 50elementos double.
int pesos [25] , longitudes [loo] ;
float salarios [25] ;
double temperaturas[501;
char letras [15] ; Declara un array de caracteres.
#define MX 120
charrbuffer[MX+l]; Declara un array de caracteres de tamaño MX+l,
el primer elemento es buffer[O] y el último buffer[MX].
En los programas se pueden referenciar elementos del array utilizando fórmulas para los subíndices.Mientras que el subíndice puede evaluar a un entero, se puede utilizar una constante, una variable o una
expresión para el subíndice. Así, algunas referencias individuales a elementos son:
edad [ 4 I
ventas [total+5 1
bonos [mes 1
salario [mes [il*5]
8.1.3. Almacenamiento en memoria de los arrays
Los elementos de los arrays se almacenan en bloques contiguos. Así, por
int edades [ 5 1 ;
charcodigos [ 5 I ;
se representan gráficamente en memoria en la Figura 8.3.
Edades
I mplo, los arrays
Figura 8.3. Almacenamiento en memoria de arrays.
Arrays (listas y tablas) 263
Nota
Todos los subíndices de los arrays comienzan con O.
Precaución
C permite asignar valores fuera de rango a los subíndices. Se debe tener cuidado no hacer esta
acción, debido a que se sobreescribirían datos ocódigo.
Los arrays de caracteres funcionan de igual forma que los arrays numéricos, partiendo de la base de
que cada carácter ocupa normalmente un byte. Así, por ejemplo, un array llamado nombre se puede
representar en la Figura 8.4.
c h a r nornhre [ ] = "('azor Id" F
PI
Figura 8.4. Almacenamiento de un arrays de caracteres en memoria.
A tener en cuenta, en las cadenas de caracteres el sistemasiempre inserta un Último carácter (nulo)
para indicar fin de cadena.
8.1.4. El tamaño de los arrays
El operador sizeof devuelve el número de bytes necesarios para contener su argumento. Si se usa
sizeof para solicitar el tamaño de un array, esta función devuelve el número de bytes reservados para
el array completo.
Por ejemplo, supongamos que se declara un array de enteros de 100 elementosdenominado edades;
si se desea conocer el tamaño del array, se puede utilizar una sentencia similar a:
n = sizeof(edades);
L
264 Programación en C. Metodología, algoritmos y estructura de datos
donde n tomará el valor 200. Si se desea solicitar el tamaño de un elemento individual del array, tal
como
n = sizeof(edades[6]);
n almacenará el valor 2 (número de bytes que contienen un...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Guía de Programación
  • Guia Programacion
  • Guia de programacion
  • Guia de programacion
  • Guia programacion
  • Guia de programacion
  • Guia de programacion
  • Guia de programacion

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS