Está en la página 1de 5

Ejercicio con matrices y bucles en Lenguaje C

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 cuál es la nota media de un determinado curso.
3. Decir cuántos aprobados y suspendidos 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 suspendidos=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 Suspendidos. 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
{
suspendidos++;
}
}
printf("En la Asignatura 1 del Curso 1 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados,suspendidos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[0][i][1]>=5)
{
aprobados++;
}
else
{
suspendidos++;
}
}
printf("En la Asignatura 2 del Curso 1 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados, suspendidos);
}
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
{
suspendidos++;
}
}
printf("En la Asignatura 1 del Curso 2 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados, suspendidos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[1][i][1]>=5)
{
aprobados++;
}
else
{
suspendidos ++;
}

}
printf("En la Asignatura 2 del Curso 2 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados, suspendidos);
}
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
{
suspendidos++;
}
}
printf("En la Asignatura 1 del Curso 3 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados, suspendidos);
}
else
{
for(i=0;i<5;i++)
{
if(escuela[2][i][1]>=5)
{
aprobados++;
}
else
{
suspendidos++;
}
}
printf("En la Asignatura 2 del Curso 3 hay %.0f aprobados y %.0f suspendidos
\n\n",aprobados, suspendidos);
}
break;
}
system("PAUSE");

También podría gustarte