PDA

View Full Version : [C] Passaggio array bidimensionale a funzione


DarkSun84
08-09-2008, 11:54
Salve, ho il seguente problema, creando un array bidimensionale quando poi lo passo come parametro ad una funzione, quest'ultima mi da un output sbagliato ad esempio ho la matrice iniziale:
1110100
1011001
0000100
0110110
0101001
0000100
la trasposta dovrebbe essere:
110000
100110
110100
010010
101101
000100
010010
ed invece la funzione stampa mi restituisce:
110000
228925210011
023712721101
002289416010
01025610
110122811560
00100458758
dove sbaglio?


void stampa(int f,int count,long A2[][count]){
int l=0;
int w=0;
printf("ristampa matrice dopo swap: w:%d l:%d\n",f,count);


for(w=0;w<f;w++){
for(l=0;l<count;l++){ printf("%d",A2[w][l]); }
printf("\n");
}
}

void crivello(){
printf("matrice iniziale:\n"); //già inizializzata prima

for(w=0;w<count;w++){
for(l=0;l<f;l++){ printf("%d",A1[w][l]); }
printf("\n");}

// matrice trasopsta
printf("matrice trasposta: \n");

for(w=0;w<count;w++){
for(l=0;l<f;l++){ A2[l][w]= A1[w][l]; }
}

stampa(f,count,A2);
}