Dev - C++ - Ayuda con programa en C (matriz)

 
Vista:
sin imagen de perfil
Val: 1
Ha aumentado su posición en 3 puestos en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con programa en C (matriz)

Publicado por Jazmin Silvas (1 intervención) el 23/02/2020 20:26:53
El ejercicio es el siguiente:
Un maestro debe calcular las calificaciones finales de sus estudiantes, para calcular dicha calificación, esta resulta de el promedio de tres calificaciones parciales.
Se necesita elaborar un programa en C para que pueda capturar e imprimir sus listas con resultados. Como entrada solicitara la cantidad de alumnos y después por cada alumno solicitar el nombre y las calificaciones.
Al terminar el programa debe presentar la lista ahora con promedio final y con la indicación si el alumno aprobó o reprobó la materia, esto ultimo considerando que si la calificación final es mayor o igual que 6 esta aprobado en caso contrario reprobado.

Esto es lo que he logrado hacer, sin embargo el programa me corre mal y no sé por qué:

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
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
    int filas, columnas;
 
    printf("\n\tNumero de alumnos: ");
    scanf("%i",&filas);
    printf("\n\tNumero de calificaciones: ");
    scanf("%i",&columnas);
 
    float matriz[filas][columnas+1];
 
    for(int i=0; i<filas; i++){
        printf("\n\tAlumno %i\n", (i+1));
        for(int j=0; j<columnas; j++){
            printf("\tCalificacion %i: ", (j+1));
            scanf("%f", &matriz[i][j]);
            matriz[i][columnas]+=matriz[i][j];
        }
    }
    for(int i=0; i<filas; i++){
        printf("\n\n\tAlumno %i",(i+1));
        printf("\n\tPromedio: %f", matriz[i][columnas]/columnas);               //Aquí es donde falla en el promedio
 
        if(matriz[i][columnas]/columnas>6){
            printf("\n\tAprobado");
        }else{
            printf("\n\tReprobado");
        }
    }
    return 0;
}

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alfil
Val: 4.344
Oro
Ha mantenido su posición en Dev - C++ (en relación al último mes)
Gráfica de Dev - C++

Ayuda con programa en C (matriz)

Publicado por Alfil (1444 intervenciones) el 24/02/2020 07:49:15
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
#include <stdio.h>
 
struct Alumno
{
    char nombre[20];
    float cal1;
    float cal2;
    float cal3;
    float promedio;
};
 
int main()
{
    int sz, i;
 
    printf("\nNumero de alumnos: ");
    scanf("%d", &sz);
 
    Alumno a[sz];
 
    printf("\nIntroducir datos:\n" );
    for(i = 0; i < sz; i++) {
        printf("\nAlumnno %d:", i + 1);
        printf("\nNombre: ");
        fflush(stdin);
        scanf("%19[^\n]", a[i].nombre);
        printf("Calificacion 1: ");
        scanf("%f", &a[i].cal1);
        printf("Calificacion 2: ");
        scanf("%f", &a[i].cal2);
        printf("Calificacion 3: ");
        scanf("%f", &a[i].cal3);
        a[i].promedio = (a[i].cal1 + a[i].cal2 + a[i].cal3) / 3.0f;
    }
 
    printf("\n\nDatos de los Alumnos:");
    printf("\n=======================");
    for(i = 0; i < sz; i++) {
 
        printf("\nAlumnno %d:", i + 1);
        printf("\nNombre: %s", a[i].nombre);
        printf("\nCalificacion 1: %.2f", a[i].cal1);
        printf("\nCalificacion 2: %.2f", a[i].cal2);
        printf("\nCalificacion 3: %.2f", a[i].cal3);
 
        printf("\nPromedio: %.2f", a[i].promedio);
        if(a[i].promedio >= 6.0f)
            printf("\nAprobado");
        else
            printf("\nReprobado");
 
        printf("\n-------------------");
    }
 
    printf("\n\n");
 
    return 0;
}
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar