Turbo C – Capítulo 05 – Arrays y punteros

En la programación, los arreglos y los punteros son conceptos fundamentales para manejar y manipular datos de manera eficiente. Los arreglos permiten almacenar múltiples valores del mismo tipo en una estructura organizada, mientras que los punteros facilitan el acceso y la manipulación de la memoria. En Turbo C, el uso combinado de arreglos y punteros permite realizar operaciones más avanzadas. En este capítulo, exploraremos cómo trabajar con arreglos y punteros en Turbo C, junto con ejemplos y ejercicios resueltos.
Arreglos
Los arreglos son colecciones de elementos del mismo tipo almacenados en una secuencia contigua en la memoria. Cada elemento se accede mediante un índice, que comienza en 0 para el primer elemento.
Declaración:
tipo nombre_arreglo[tamaño];
Acceso a Elementos:
nombre_arreglo[indice];
Ejemplo:
#include <stdio.h>
int main() {
int numeros[5] = {1, 2, 3, 4, 5};
printf("Elemento en la posición 2: %d\n", numeros[2]);
return 0;
}
Punteros
Los punteros son variables que almacenan direcciones de memoria. Permiten el acceso directo y la manipulación de datos en memoria. Los punteros pueden usarse para acceder a elementos de un arreglo, para asignar memoria dinámica y para implementar estructuras de datos más avanzadas.
Declaración:
tipo *nombre_puntero;
Asignación de Direcciones:
nombre_puntero = &variable;
Acceso a Datos a través de Punteros:
*nombre_puntero;
Ejemplo:
#include <stdio.h>
int main() {
int numero = 42;
int *puntero = №
printf("Valor de número: %d\n", numero);
printf("Valor a través del puntero: %d\n", *puntero);
return 0;
}
Uso de Punteros con Arreglos
Los punteros y los arreglos están estrechamente relacionados. Un puntero puede utilizarse para acceder a elementos de un arreglo, y también se puede realizar aritmética de punteros para navegar a través de los elementos.
Ejemplo:
#include <stdio.h>
int main() {
int numeros[] = {10, 20, 30, 40, 50};
int *puntero = numeros; // El puntero apunta al primer elemento del arreglo
for (int i = 0; i < 5; i++) {
printf("Elemento %d: %d\n", i, *(puntero + i));
}
return 0;
}
Ejercicios Resueltos
Ejercicio 1: Suma de Elementos
Escribe un programa en Turbo C que calcule la suma de los elementos de un arreglo de enteros.
Solución:
#include <stdio.h>
int main() {
int numeros[] = {10, 20, 30, 40, 50};
int suma = 0;
for (int i = 0; i < 5; i++) {
suma += numeros[i];
}
printf("Suma de elementos: %d\n", suma);
return 0;
}
Ejercicio 2: Intercambio de Valores
Escribe un programa que intercambie los valores de dos variables utilizando punteros.
Solución:
#include <stdio.h>
void intercambiar(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int num1 = 5, num2 = 10;
printf("Antes del intercambio: num1 = %d, num2 = %d\n", num1, num2);
intercambiar(&num1, &num2);
printf("Después del intercambio: num1 = %d, num2 = %d\n", num1, num2);
return 0;
}
Conclusion
Los arreglos y los punteros son conceptos esenciales en la programación, ya que permiten almacenar y manipular datos de manera eficiente, así como acceder directamente a la memoria. Turbo C ofrece herramientas para trabajar con arreglos y punteros, lo que permite desarrollar programas más poderosos y flexibles.