Ho scritto questo programma,che mi stampa pero' numeri altissimi e casuali che non hanno niente a che vedere con i valori della matrice che scelgo io con scanf.
Ha 0 errori e 0 warnings.
Ecco il codice:
codice:
#include <stdio.h>
#define COLONNE 10;
typedef int matrice[3][3];
void trasposta(matrice);
matrice mat;
main()
{
int i,j,k,l;
printf("Digita elementi matrice");
for(i=0;i<3;i++)
for(j=0;j<3;j++)
{
printf("Digita elemento riga%d,colonna%d: ",(i+1),(j+1));
scanf("%d",&mat[i][j]);
while(getchar()!=10)
;
}
printf("Visualizzazione matrice trasposta:\n");
trasposta(mat);
for(k=0;k<3;k++)
{
if(k>=1)
printf("\n");
for(l=0;l<3;l++)
printf("%d;",mat[k][l]);
}
return 0;
}
void trasposta(matrice m)
{
int i,j,mat[3][3];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
m[i][j]=mat[j][i];
for(i=0;i<3;i++)
for(j=0;j<3;j++)
mat[i][j]=m[i][j];
}
Siccome mat e' una variabile globale,in teoria dovrebbe funzionare,cosa c'e' che non va ?