Volevo svolgere un semplice esercizio in C sulle matrici, che chiede di far inserire i voti di un elenco di studenti in una matrice e poi di calcolare la media per ogni studente.
Per quanto riguarda la parte delle medie ecc il programma va bene,
il problema sta nell'inserimento dei voti nella matrice(4X4),
che in fase di scanf da un errore di segmentation fault al valore della matrice[1][2].
codice:
#include <stdlib.h>#include <stdio.h>
int main()
{
int righe=4;
int colonne=4;
int voti[righe][colonne];
int i, j, k=1;
float somma=0;
float medie[4];
// Cerco di prendere i voti
for (i=0;i<righe;i++){
printf("inserire voti dello studente %d \n",i);
for(j=0;j<colonne;j++){
scanf("%d",voti[i][j]);
}
}
// Faccio la media
for (i=0;i<righe;i++){
somma=0;
for(j=0;j<colonne;j++){
somma=somma+voti[i][j];
medie[i]=somma/righe;
}
}
//Stampo a video i risultati
for (i=0;i<righe;i++){
printf("Studente %d ",i);
for(j=0;j<colonne;j++){
printf("%d ",voti[i][j]);
}
printf("\n");
}
for (i=0;i<righe;i++){
printf("\nlo studente %d ha una media di ",i);
printf("%f ",medie[i]);
}
}
In realtà mi chiedo solo se io ho sbagliato l'algoritmo o è un qualche problemino del compilatore, perchè a me sembra fatto abbastanza bene....