Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Punteros a Estructuras | Trabajando con Punteros y Estructuras
Structs en C
Sección 2. Capítulo 2
single

single

Punteros a Estructuras

Desliza para mostrar el menú

El lenguaje de programación C permite crear punteros no solo a tipos de datos regulares sino también a estructuras (ya que una estructura es un tipo de dato personalizado).

La declaración e inicialización de un puntero se realiza de la siguiente manera:

struct <name_of_struct>
{
    <field_of_struct>;
};

struct <name_of_struct>* <name_of_pointer>;

Si <name_of_pointer> es un puntero a una estructura,
entonces *(<name_of_pointer>) es la propia estructura.

Para acceder a los campos de una estructura a través de un puntero, se debe utilizar el operador ->.

Note
Nota

-> es un análogo del operador de acceso a estructuras .

main.c

main.c

12345678910111213141516171819202122
#include <stdio.h> // structure declaration struct Point { int x; int y; }; int main() { // create a structure variable of Point type struct Point p1; p1.x = 10; p1.y = 20; // create a pointer to a structure of type Point and assign it the address of variable p1 struct Point* ptr = &p1; // Access structure members via pointer by `->` operator printf("Coordinates: (%d, %d)\n", ptr->x, ptr->y); return 0; }

Este programa muestra cómo trabajar con una estructura Point que almacena dos coordenadas, x y y. En la función main, se crea una variable p1 y se le asignan valores de coordenadas, luego se inicializa un puntero a esta estructura. Usando el operador ->, el programa accede a los campos de la estructura a través del puntero e imprime las coordenadas del punto en pantalla.

Tarea

Desliza para comenzar a programar

Tienes un estudiante con calificaciones en 3 materias: Math, Physics y Programming.
Tu tarea es calcular el promedio de calificaciones del estudiante y determinar si aprobó el curso.

Dentro de la función calculateAverageAndCheck:

  1. Accede a la calificación de cada materia usando el puntero.
  2. Suma las tres calificaciones para obtener el puntaje total.
  3. Divide el total entre 3.0 para calcular el promedio.
  4. Compara el resultado con el umbral de aprobación de 60.
  5. Si el promedio es mayor o igual a 60, retorna true (el estudiante aprobó).
  6. De lo contrario, retorna false (el estudiante reprobó).

Example

MathPhysicsProgrammingAverageResult
85.055.060.066.67✅ Passed
50.040.045.045.00❌ Failed
60.060.060.060.00✅ Passed

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 2
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt