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....![]()

Rispondi quotando