Buonasera,
Sono nuovissimo sia nel forum sia nella programmazione.
Mi stavo cimentando in un semplice programmino che desse in output la somma degli elementi della sottomatrice con la somma maggiore (di una matrice più grande, il numero di celle è indicato dai define).
Purtroppo il compilatore non da problemi, ma all'esecuzione si blocca dopo l'inserimento della matrice, ed eseguendo il debug mi viene indicato un errore di segmentazione alla istruzione: VS[j]+=m[k];
Ringrazio chiunque riuscirà a darmi anche solo dei piccoli consigli per risolvere o comunque spostarmi verso la risoluzione.
Posto il codice completo e ringrazio ancora in anticipo:
#include <stdio.h>
#include <stdlib.h>
#define N 3
#define M 3
#define Z 2
#define T 2
#define H (N-Z+1)*(M-T+1)
main()
{
int m[N][M],i,k,j,a,b,VS[H],max;
j=max=0;
for(j=0;j<H;j++)
VS[j]=0;
printf("Inserisci gli elementi della matrice positivi");
for(i=0;i<N;i++)
for(k=0;k<M;k++)
scanf("%d",&m[k]);
for(a=0;a<(N-1);a++)
{
for(b=0;b<(M-1);b++)
{
for(i=a;i<(a+Z);i++)
{
for(k=b;k<(b+T);k++)
VS[j]+=m[k];
}
j++;
}
}
for(j=0;j<H;j++)
{
if(VS[j]>max)
max=VS[j];
}
printf("%d",max);
printf("\n\n");
system("PAUSE");
return 0;
}