Caso Práctico
Tenemos guardada en una matriz los alumnos de una escuela. Sabiendo que hay 3 cursos distintos, 5 alumnos por curso y que cada alumno tiene 2 asignaturas, se pide:
1. Pedir por teclado las notas que ha sacado cada alumno en cada asignatura y de cada curso.
2. Decir cual es la nota media de un determinado curso.
3. Decir cuántos aprobados y suspensos hay en una determinada asignatura en un determinado curso.
int main()
{
float escuela[3][5][2];
int c,al,as,i,j,menu,asignatura,pos=0;
float media=0;
float aprobados=0;
float suspensos=0;
printf("PROGRAMA ESCUELA\n\n");
printf("================\n\n");
for(c=1;c<4;c++)
{
printf("CURSO %d:\n",c);
for(al=1;al<6;al++)
{
printf(" ALUMNO %d:\n",al);
for(as=1;as<3;as++)
{
printf(" Introduce la nota de la Asignatura %d: ",as);
scanf("%f",&escuela[c-1][al-1][as-1]);
}
}
}
printf("\n\n");
printf("De que curso quiere saber la nota media? [1,2,3] ");
scanf("%d",&menu);
switch (menu){
case 1:
for(i=0;i<5;i++)
{
for(j=0;j<2;j++)
{
media += escuela[0][i][j];
}
}
printf("La nota media del Curso 1 es %.2f\n\n\n",media/10);
break;
case 2:
for(i=0;i<5;i++)
{
for(j=0;j<2;j++)
{
media += escuela[1][i][j];
}
}
printf("La nota media del Curso 2 es %.2f\n\n\n",media/10);
break;
case 3:
for(i=0;i<5;i++)
{
for(j=0;j<2;j++)
{
media += escuela[2][i][j];
}
}
printf("La nota media del Curso 3 es %.2f\n\n\n",media/10);
break;
}
printf("Aprobados y Suspensos. Seleccione el Curso [1,2,3]");
scanf("%d",&menu);
switch (menu){
case 1:
printf("De que asignatura?[1,2]");
scanf("%d",&asignatura);
if(asignatura==1)
{
for(i=0;i<5;i++)
{
if(escuela[0][i][0]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 1 del Curso 1 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[0][i][1]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 2 del Curso 1 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
break;
case 2:
printf("De que asignatura?[1,2]");
scanf("%d",&asignatura);
if(asignatura==1)
{
for(i=0;i<5;i++)
{
if(escuela[1][i][0]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 1 del Curso 2 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[1][i][1]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 2 del Curso 2 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
break;
case 3:
printf("De que asignatura?[1,2]");
scanf("%d",&asignatura);
if(asignatura==1)
{
for(i=0;i<5;i++)
{
if(escuela[2][i][0]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 1 del Curso 3 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[2][i][1]>=5)
{
aprobados++;
}
else
{
suspensos++;
}
}
printf("En la Asignatura 2 del Curso 3 hay %.0f aprobados y %.0f suspensos\n\n",aprobados,suspensos);
}
break;
}
system("PAUSE");
}
Me parece bien completo para explicarlo en una clase
ResponderEliminarEste comentario ha sido eliminado por el autor.
ResponderEliminar