Piszę funkcję, która na podstawie jednej tablicy tworzy inną tablicę dwuwymiarową, z odwróconymi wierszami i kolumnami (transponowaną).
np.
2 4
7 6
1 3
po:
2 7 1
4 6 3
Kompilator pokazuje błędy w linijkach z deklaracją funkcji "transponuj"oraz jej wywołaniem. Domyślam się że chodzi o niepoprawne użycie wskaźników, proszę o wskazówki co należy poprawić.
#include<stdio.h>
int transponuj(int **tab, int m, int n){
int T_trans[m][n], i, j;
for(i=0; i<m; i++){
for(j=0; j<n; j++)
T_trans[i][j] = tab[j][i];
}
printf("Macierz transponowana:\n");
for(i=0; i<3; i++){
for(j=0; j<3; j++)
printf("%d\t", T_trans[i][j]);
printf("\n");
}
return 0;
}
int main(){
int tab[3][3]={ {12,15,10}, {7,13,20}, {2,4,8} };
int i=3, j=3;
printf("Macierz:\n");
for(i=0; i<3; i++){
for(j=0; j<3; j++)
printf("%d\t",tab[i][j]);
printf("\n");
}
transponuj(tab, 3, 3);
return 0;
}