Пример. Преобразование двумерного
массива в одномерный. Иногда надо скопировать матрицу A размером M на N в одномерный массив B
размером M*N. Очевидно, что при копировании по строкам (сначала первая строка,
затем вторая и т.д.) элемент первой строки A[0][j] надо
скопировать в B[j], элементы второй строки A[1][j] в
B[N+j] и т.д.
Отсюда следует, что
для любой строки
i элемент A[i][j]
копируется в B[i*N+j]. теперь
осталось только в двойном цикле перебрать все элементы матрицы.
for ( i = 0; i < M; i ++ )
for ( j = 0; j < N; j ++ )
B[i*N+j] = A[i][j];
2009-12-19 • Просмотров [ 18831 ]
У меня почему-то выдает ошибку о выхождении за границы