).
/**** Deklarazioen atala ****/
#include
#include
#define MAX 6
void matrizeaHasieratu (int[][6],unsigned short);
void matrizeaJaso (int[][6],unsigned short);
void matrizeaIrauli (int[][6],unsigned short);
void matrizeaPantailaratu(int[][6],unsigned short);
int matrizeTamaina(int[][6],unsigned short);
/**** Programa principal ****/
main()
{
int matrix[MAX][MAX];
unsigned short dim;
char str[15];
do
{
printf("De que dimensión quieres usar la matriz cuadrada?(Max = %d)\n",MAX);
gets(str);
sscanf(str,"%d",&dim);
}
while (dim>MAX || dim<1);
matrizeaHasieratu(matrix,dim);
matrizeaJaso(matrix,dim);
matrizeaIrauli(matrix,dim);
matrizeaPantailaratu(matrix,dim);
printf("Matrizeak memorian okupatzen duen tamaina %d bytekoa da.\n",matrizeTamaina(matrix,dim));
getchar();
}
/**** Función para inicializar la matriz ****/
void matrizeaHasieratu(int matrix[][6], unsigned short i)
{
unsigned short j,k;
for (j=0;j }
/**** función para leer por el teclado los valores de la matriz ****/
void matrizeaJaso(int matrix[][6], unsigned short i)
{
unsigned short j,k;
char str[15];
for (j=0;j {
printf("Mete los números de la fila %d de uno en uno. ",j+1);
for (k=0;k {
printf("\n%d.-",k+1);
gets(str);
sscanf(str,"%d",&matrix[j][k]);
}
}
}
/**** función para escribir la matriz en la pantalla ****/
void matrizeaPantailaratu (int matrix[][6], unsigned short i)
{
unsigned short j,k;
for (j=0;j {
for (k=0;k printf("\n");
}
printf("\n");
for (j=0;j {
for (k=0;k printf("\n");
}
}
/**** Función para darle la vuelta a la matriz ****/
void matrizeaIrauli(int matrix[][6], unsigned short i)
{
unsigned short j,k;
int aux;
for (j=0;j for (k=0;k{
aux=matrix[j][k];
matrix[j][k]=matrix[k][j];
matrix[k][j]=aux;
}
}
/**** función para conocer el tamaño de la matriz en la memoria ****/
int matrizeTamaina(int matrix[][6],unsigned short dim)
{
return (&(matrix[dim][dim])+1-&(matrix[0][0]));
}