Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/09/2013, 15:54
carbon
 
Fecha de Ingreso: enero-2012
Ubicación: Buenos Aires
Mensajes: 745
Antigüedad: 12 años, 10 meses
Puntos: 35
Respuesta: Problema sencillo de C++

Mi solución en C:

Código C:
Ver original
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. struct Alumno {
  5.     int notas[3];
  6.     float promedio;
  7. };
  8.  
  9. struct MejorPromedio {
  10.     int alumno;
  11.     float promedio;
  12. };
  13.  
  14. int main(int argc, char **argv)
  15. {
  16.     struct Alumno alumnos[10];
  17.     struct MejorPromedio mejor_promedio = {-1, -1};
  18.     int i, j;
  19.    
  20.     for (i = 0; i < 10; i++)
  21.     {
  22.         for (j = 0; j < 3; j++)
  23.         {
  24.             printf("[Alumno %d] Nota %d: ", i + 1, j + 1);
  25.             scanf("%d", &(alumnos[i].notas[j]));
  26.         }
  27.         alumnos[i].promedio = (alumnos[i].notas[0] + alumnos[i].notas[1] +
  28.                                alumnos[i].notas[2]) / 3;
  29.     }
  30.    
  31.     for (i = 0; i < 10; i++)
  32.     {
  33.         if (alumnos[i].promedio > mejor_promedio.promedio)
  34.         {
  35.             mejor_promedio.promedio = alumnos[i].promedio;
  36.             mejor_promedio.alumno = i + 1;
  37.         }
  38.     }
  39.    
  40.     if (mejor_promedio.promedio == -1)
  41.         printf("Todos los alumnos tienen el mismo promedio.\n");
  42.     else
  43.         printf("El alumno %d tiene el mejor promedio: %f\n",
  44.                mejor_promedio.alumno, mejor_promedio.promedio);
  45.    
  46.     return 0;
  47. }