#include <stdio.h>
#include <stdlib.h>

void func(int dim, double[dim][dim]);

int main()
{
    double m[3][3] = {{1, 1, 1}, {2, 2, 2}, {3, 3, 3}};
    double (*m1)[3] = malloc(sizeof(double[3][3]));
    int i, j;
    for(i = 0 ; i < 3 ; i++)
    for(j = 0 ; j < 3 ; j++)
    {
    	m1[i][j] = i * j + 0.5;
    }

    func(3, m);
    func(3, m1);
    free(m1);
	return 0;
}

void func(int dim, double m[dim][dim])
{
    int i, j ;
    for(i = 0 ; i < dim ; i++)
    {
        for(j = 0 ; j < dim ; j++)
            printf("%0.2f ", m[i][j]);
        printf("\n");
    }
}

