Transponuj matiricu!

Napisati funkciju koja transponuje datu kvadratnu matricu.

Ulaz

Sa standardnog ulaza se unose dimenzija kvadratne matrice $n$ ($1 \leq n \leq 1000$), a zatim, u $n$ rodova, se unosi po $n$ elemenata matrice u opsegu od $-1000$ do $1000$.

Izlaz

Na standardni izlaz ispisati transponovanu kvadratnu matricu.

Primer

Ulaz

4
1 2 3 4
4 3 2 1
1 2 3 4
4 3 2 1

Izlaz

1 4 1 4
2 3 2 3
3 2 3 2
4 1 4 1

Rešenje

main.c

#include <stdio.h>

#define MAX_SIZE 1000

void transpose_matrix(int mat[MAX_SIZE][MAX_SIZE], int n)
{
	for (int i = 0; i < n; i++)
	{
		for (int j = i + 1; j < n; j++)
		{
			int temp = mat[i][j];
			mat[i][j] = mat[j][i];
			mat[j][i] = temp;
		}
	}
}

int main(void)
{
	int n;

	int mat[MAX_SIZE][MAX_SIZE];

	scanf("%d", &n);
	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < n; j++)
		{
			scanf("%d", &mat[i][j]);
		}
	}

	transpose_matrix(mat, n);

	for (int i = 0; i < n; i++)
	{
		for (int j = 0; j < n; j++)
		{
			printf("%d ", mat[i][j]);
		}
		printf("\n");
	}
	
	return 0;
}