Другие языки программирования и технологии

СИ++ не успеваю сделать программу.Помогите пожалуйста!

Написать и протестировать функцию,представляющую в обратном порядке главные элементы главной диагонали квадратной матрицы. P.S.сам долго делаю-не выходит а времени в обрез(((
Функцию я назвал reverse(). Вот пример ее использования

#include<iostream>

#define MATRIX_SIZE 3

void reverse( int matrix[][MATRIX_SIZE] )
{
for ( int i = 0, j = MATRIX_SIZE - 1; i < j; i++, j-- )
{
int tmp = matrix;
matrix = matrix[j][j];
matrix[j][j] = tmp;
}
}

int main(int argc, char *argv[])
{

int array[][MATRIX_SIZE] = { { 4,2,8 },
{ 9, 5,7 },
{ 1,8, 3 } };
std::cout << "Before reverse()" << std::endl;
for ( int i = 0; i < 3; i++ )
{
for ( int j = 0; j < 3; j++ )
{
std::cout << array[j];
}
std::cout << std::endl;
}

reverse( array );

std::cout << "After reverse()" << std::endl;
for ( int i = 0; i < 3; i++ )
{
for ( int j = 0; j < 3; j++ )
{
std::cout << array[j];
}
std::cout << std::endl;
}



Тут некоторые знаки в интернет не пропечатываются. Поэтому внутри функции reverse() переменной tmp должно присваиваться значение элемента matrix с индексами в квадратных собках i и i.
Сергей Зубарев
Сергей Зубарев
79 586
Лучший ответ
#define N 10

void Test(int A[N][N])
{
for (int j = 0; j < N/2; j++)
{
int t = A[j][j];
A[j][j] = A[N-j-1][N-j-1];
A[N-j-1][N-j-1] = t;
}
}
хех.. . у меня тож не получаеца...