Está en la página 1de 3

#include <stdio.

h>

#include <stdlib.h>

/* run this program using the console pauser or add your own getch, system("pause") or input loop */

struct datos{

char nombre[20];

float notas[20];

};

int main(int argc, char *argv[]) {

struct datos *alumno;

int N=0;

char c;

int i, cant, j;

float suma[20], porc[20], sum;

float prom, promf, desv[20];

printf("Ingrese la cantidad de notas: ");

scanf("%d", & cant);

printf("Ingrese los porentajes de las notas: \n");

for (i=0;i<cant;i++){

printf("Porcentaje nota %d: ", i+1);

scanf("%f", & porc[i]);

}
printf("\t\nAlumnos\n");

do {

alumno=(struct datos*)realloc((struct datos*)alumno,(N+1)*sizeof(struct datos));

suma[N]=0;

printf("Nombre: ");

scanf("%s", alumno[N].nombre);

for (i=0;i<cant;i++){

printf("Nota %d: ", i+1);

scanf("%f", & alumno[N].notas[i]);

suma[N]=suma[N]+(alumno[N].notas[i]*(porc[i]/100));

prom=prom+suma[N];

printf("Quieres introducir otro valor? (S/N): ");

c=getch();

printf("\n");

N++;

} while (c=='s' || c=='S');

promf=prom/N;

printf("\n");

printf("Nombre\t\tNotas de examenes\t\tPromedio\tDesviacion\n");

for (i=0;i<N;i++){
printf("\n%s\t",alumno[i].nombre);

for (j=0;j<cant;j++){

printf("%.2f ", alumno[i].notas[j]);

printf("\t\t%.2f", suma[i]);

desv[i]=promf-suma[i];

printf("\t\t%.3f ", desv[i]);

return 0;

También podría gustarte