Programas en C: Uso de punteros y aritmética de punteros en arreglos
Alumno: _______________________
Materia: Programación Estructurada I
Fecha: _______________________
Introducción
En el lenguaje de programación C, el uso de punteros es fundamental para manipular
directamente la memoria y acceder a estructuras de datos de manera eficiente. Los arreglos
en C están estrechamente relacionados con los punteros, ya que el nombre del arreglo
representa la dirección de memoria del primer elemento. En este documento se presentan
dos programas que hacen uso de aritmética de punteros para recorrer un arreglo y para
calcular la suma de sus elementos, sin utilizar la notación de corchetes ([]).
Programa 1: Recorrido de arreglo usando punteros
#include <stdio.h>
int main() {
int numeros[5] = {10, 20, 30, 40, 50}; // Declaración e inicialización del arreglo
int *ptr = numeros; // Puntero al primer elemento del arreglo
printf("Recorrido del arreglo usando punteros:\n");
// Recorrido con aritmética de punteros
for (int i = 0; i < 5; i++) {
printf("Elemento en posicion %d = %d\n", i, *(ptr + i));
}
return 0;
}
Programa 2: Suma de elementos usando punteros
#include <stdio.h>
int main() {
int numeros[] = {5, 10, 15, 20, 25}; // Arreglo con valores predefinidos
int *ptr = numeros; // Puntero al primer elemento
int suma = 0;
int n = sizeof(numeros) / sizeof(numeros[0]); // Número de elementos del arreglo
// Suma usando aritmética de punteros
for (int i = 0; i < n; i++) {
suma += *(ptr + i);
}
printf("La suma de los elementos es: %d\n", suma);
return 0;
}
Ejecución Programa 1
Recorrido del arreglo usando punteros:
Elemento en posicion 0 = 10
Elemento en posicion 1 = 20
Elemento en posicion 2 = 30
Elemento en posicion 3 = 40
Elemento en posicion 4 = 50
Ejecución Programa 2
La suma de los elementos es: 75
Conclusión
El uso de punteros en C permite un manejo directo y eficiente de la memoria, lo que facilita
operaciones como el recorrido y manipulación de arreglos sin necesidad de usar notación de
índices. Estos ejemplos demuestran cómo la aritmética de punteros brinda flexibilidad y
potencia al programador, siendo una de las características más importantes del lenguaje C.