
Sacar el promedio en este programa en C
Publicado por Gabriel (10 intervenciones) el 27/10/2016 00:28:38
Quisiera saber por que me da error al hacer el promedio de los alumnos cuyo promedio sea >=4 && <7;
tambien como hago para imprimir la lista de las 10 mejores alumnas? como saco los 10 mejores promedios de las alumnas para luego mostrarlos.Gracias
tambien como hago para imprimir la lista de las 10 mejores alumnas? como saco los 10 mejores promedios de las alumnas para luego mostrarlos.Gracias
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
#include<stdio.h>
#include<ncurses.h>
#include<string.h>
#include<ctype.h>
#define MAX_ALUMNOS 10000
#define MAX_NOTAS 10
struct alumno
{
char nombre[20];
char sexo;
int notas[MAX_NOTAS];
};
int main()
{
struct alumno alumnos[MAX_ALUMNOS];
//float promedio=0.0;
float resultado = 0.0;
int num_alumnos;
for( num_alumnos=0; num_alumnos<MAX_ALUMNOS; num_alumnos++ )
{
printf("Nombre del alumno (para terminar teclee FIN): ");
scanf("%s",alumnos[num_alumnos].nombre);
if( strcmp(alumnos[num_alumnos].nombre,"FIN") == 0 )
break;
// else ....
// nota que como el if tiene un break no es necesario el else
do
{
char sexo;
printf("Sexo: M o F: ");
scanf("%c",&sexo);
alumnos[num_alumnos].sexo = toupper(sexo);
} while( alumnos[num_alumnos].sexo != 'M' && alumnos[num_alumnos].sexo !='F');
for (int j=0; j<MAX_NOTAS; j++)
{
printf("Ingrese nota # %d: ",j+1);
scanf("%d",&alumnos[num_alumnos].notas[j]);
}
//int resultado = 0;
float promedio=0.0;
for (int i=0; i<num_alumnos; i++) {
int suma = 0;
for (int j=0; j<MAX_NOTAS; j++)
suma += alumnos[i].notas[j];
promedio = suma/MAX_NOTAS;
if (promedio >= 4 && promedio < 7){
resultado++;
}
}
}
printf("Total de alumnos con promedio >= 4 y promedio < 7 = ");
printf("%.2f",resultado);
}
Valora esta pregunta


0