The Program in C to transpose a 2-d array is given below:
#include <stdio.h>
#define ROWS 3
#define COLS 3
int main() {
int arr[ROWS][COLS], transpose[COLS][ROWS], i, j;
printf("Enter the elements of the 2-D array:\n");
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
scanf("%d", &arr[i][j]);
}
}
for (i = 0; i < ROWS; i++) {
for (j = 0; j < COLS; j++) {
transpose[j][i] = arr[i][j];
}
}
printf("The transpose of the 2-D array is:\n");
for (i = 0; i < COLS; i++) {
for (j = 0; j < ROWS; j++) {
printf("%d ", transpose[i][j]);
}
printf("\n");
}
return 0;
}
Output:
Enter the elements of the 2-D array:
3
5
6
1
3
5
6
7
9
The transpose of the 2-D array is:
3 1 6
5 3 7
6 5 9
Pro-Tips💡
This program defines two integer constants ROWS and COLS to set the size of the 2-D array.
Then, it reads in the elements of the 2-D array using nested for loops.
Next, it uses another set of nested for loops to transpose the array by swapping the rows and columns.
Finally, it prints out the transposed array.
Note: This program is hardcoded for a 3×3 matrix, you can adjust the size of matrix by changing the value of ROWS and COLS.
Learn C-Sharp ↗
C-sharp covers every topic to learn about C-Sharp thoroughly.
Learn C Programming ↗
C-Programming covers every topic to learn about C-Sharp thoroughly.
Learn C++ Programming↗
C++ covers every topic to learn about C-Sharp thoroughly.