#include <stdio.h>
#define R 3
#define C 2
void leggiMatrice(double m[R][C])
{
int i, j;
printf("Inserire gli elementi di una matrice di double %dx%d\n", R, C);
for (i = 0; i < R; i++)
for (j = 0; j < C; j++)
scanf("%lg", &m[i][j]);
}
void stampaMatrice(double m[R][C])
{
int i, j;
for (i = 0; i < R; i++) {
for (j = 0; j < C; j++)
printf("%6.2g", m[i][j]);
printf("\n");
}
}
void stampaMatriceTrasp(double m[C][R])
{
int i, j;
for (i = 0; i < C; i++) {
for (j = 0; j < R; j++)
printf("%6.2g", m[i][j]);
printf("\n");
}
}
void trasposta(double m[R][C], double mt[C][R])
{
int i, j;
for (i = 0; i < R; i++)
for (j = 0; j < C; j++)
mt[j][i] = m[i][j];
}
int main(void)
{
double mat[R][C];
double trasp[C][R];
leggiMatrice(mat);
printf("\nLa matrice inserita e`:\n");
stampaMatrice(mat);
trasposta(mat, trasp);
printf("\nLa trasposta e`:\n");
stampaMatriceTrasp(trasp);
return 0;
}