Переделать задачу на обработку матриц так, чтобы память под матрицы выделялась динамически. Память выделять в необходимом количестве после ввода количества строк и столбцов матрицы. Ввод/вывод производить из файла/в файл (пример см. в лекции 4).
Пример программы см. в лекции 7.