for (int k = 0;k < 3;k++);
равносильно
for (int k = 0;k < 3;k++) {
}
т.е. пустому циклу. То есть, в выражении
for (int k = 0;k < 3;k++);
for (int m = 0;m < 2;m++);
cout « " " « arr[k][m];
последняя строка вообще находится вне цикла. Соответственно, переменные-счетчики k и m в этом выражении не определены. Правильный код:
for (int k = 0;k < 3;k++)
for (int m = 0;m < 2;m++)
cout « " " « arr[k][m];