Que le puedo agregar al siguiente código para que imprima el nombre de estudiant

Iniciado por Boris Morales, 2 Octubre 2020, 00:15 AM

0 Miembros y 1 Visitante están viendo este tema.

Boris Morales

Amigos que le puedo agregar al siguiente código para que imprima los nombres de los estudiantes que aprobaron y reprobaron respectivamente????
Código (cpp) [Seleccionar]

#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <unistd.h>

int promedio(int n1, int n2, int n3);

struct seccion1{
int matricula[8];
char nombre[10];
char apellido[15];
char fecha_de_nacimiento[10];
char sexo;
int nota1;
int nota2;
int nota3;
   bool estatus;
};

main(){

struct seccion1 estudiantescuc[100];

int i,n,aprobados=0,reprobados=0;

printf("Indique la cantidad de Estudiantes a promediar: ");
scanf("%i", &n);
printf("\n");

for (i=0; i<=n-1; i++){
printf("Indique su matricula estudiante #%i: ",i+1 );
scanf("%i", &estudiantescuc[i].matricula);
printf("Indique su Nombre: " );
scanf("%s", &estudiantescuc[i].nombre);
printf("Indique su Apellido: " );
scanf("%s", &estudiantescuc[i].apellido);
printf("Indique su Fecha de Nacimiento: " );
scanf("%s", &estudiantescuc[i].fecha_de_nacimiento);
printf("Indique su Sexo: " );
scanf("%s", &estudiantescuc[i].sexo);
printf("Indique Nota 1: " );
scanf("%i", &estudiantescuc[i].nota1);
printf("Indique Nota 2: " );
scanf("%i", &estudiantescuc[i].nota2);
printf("Indique Nota 3: " );
scanf("%i", &estudiantescuc[i].nota3);

if (promedio(estudiantescuc[i].nota1, estudiantescuc[i].nota2, estudiantescuc[i].nota3) > 6){

printf(" Estudiante APROBADO ");
printf("\n");
estudiantescuc[i].estatus=1;
aprobados++;
}

else {
printf(" Estudiante REPROBADO ");
printf("\n");

estudiantescuc[i].estatus=0;
reprobados++;
}
}

printf("\n Total de Estudiantes APROBADOS : %i", aprobados);
printf("\n Total de Estudiantes REPROBADOS : %i", reprobados);

getchar();
}

int promedio(int n1, int n2, int n3){

float prom;
prom=(n1+n2+n3)/3;

return prom;
}


[MOD] Usar etiquetas GeSHi para publicar codigo.

DarK_FirefoX

Por favor, utiliza las etiquetas GeSHi para el código....

Ahora, ¿Qué puedes hacer? Pues si te das cuanta, estas guardando el status: 1 para aprobado, 0 para desaprobado. Lo que pudieras hacer es después que mostraste la cantidad de Aprobados y Reprobados, vuelves a recorrer e imprimes el nombre de los estudiantes verificando cuales son aprobados o no...

Oh, por otro lado cuando lo estas averiguando por primera vez si esta Aprobado o Reprobado, te los guardas en arrays diferentes y después imprimes cada uno de estos arrays.

:D

Saludos

Boris Morales

DarK_FirefoX:

Esta bien le voy a intentar así, mil gracias por la atención  ;D