#include<stdio.h>
#include<ctime>
#include<stdlib.h>
int i,j,n,m;
int* run(int** ms,int n,int m);
int main()
{
    srand(time(NULL));
    //Определение матрицы
    printf("Введите количество строк: ");
    scanf("%d",&n);
    printf("Введите количество столбцов: ");
    scanf("%d",&m);
    //Выделение памяти под матрицу
    int** ms=(int**)malloc(n*sizeof(int*));
    for(i=0;i<n;i++)
        ms[i]=(int*)malloc(m*sizeof(int));
    //Работа с матрицей
    run(ms,n,m);
    //Освобождение памяти
    for(i=0;i<n;i++)
        free(ms[i]);
    free(ms);
    return 0;
}
int* run(int** ms,int n,int m)
{
    //Инициализация и вывод матрицы
    for(i=0;i<n;i++){
        printf("\n");
        for(j=0;j<m;j++){
            ms[i][j]=rand()%99+1;
            printf("%2d ",ms[i][j]);
        }
    }
    return *ms;
}