#include <stdio.h>
#define SIZE 3
void printMatrix(int matrix[SIZE][SIZE]) {
for (int i = 0; i < SIZE; i++) {
for (int j = 0; j < SIZE; j++) {
printf("%d ", matrix[i][j]);
}
printf("\n");
}
}
// Function to mirror the matrix across the main diagonal
void mirrorMatrix(int matrix[SIZE][SIZE]) {
for (int i = 0; i < SIZE; i++) {
for (int j = i + 1; j < SIZE; j++) {
// Swap elements across the diagonal
int temp = matrix[i][j];
matrix[i][j] = matrix[j][i];
matrix[j][i] = temp;
}
}
}
int main() {
int matrix[SIZE][SIZE] = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
printf("Original Matrix:\n");
printMatrix(matrix);
mirrorMatrix(matrix);
printf("Mirrored Matrix:\n");
printMatrix(matrix);
return 0;
}
/*
run:
Original Matrix:
1 2 3
4 5 6
7 8 9
Mirrored Matrix:
1 4 7
2 5 8
3 6 9
*/