Skip to content

Commit d5196e5

Browse files
committed
Add transposition.c
1 parent f789506 commit d5196e5

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed

c/Transposition/transposition.c

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
#include <stdio.h>
2+
void PrintArrayMatrix(int **array, int row, int column);
3+
int **ArrayTransposition(int **array, int row, int column);
4+
int main()
5+
{
6+
int m, n;
7+
printf("please input m n:\n");
8+
scanf("%d%d", &m, &n);
9+
int a[m][n];
10+
for (int k = 1, i = 0; i < m; i++)
11+
{
12+
for (int j = 0; j < n; j++)
13+
{
14+
a[i][j] = k++;
15+
}
16+
}
17+
printf("The Origin Array is:\n");
18+
for (int i = 0; i < m; i++)
19+
{
20+
for (int j = 0; j < n; j++)
21+
{
22+
printf("%-5d ", a[i][j]);
23+
}
24+
printf("\n");
25+
}
26+
// PrintArrayMatrix((int **)a, m, n);
27+
// ArrayTransposition(a,m,n);
28+
{int temp;
29+
for (int i = 1; i < m; i++)
30+
{
31+
for (int j = 0; j < i; j++)
32+
{
33+
temp = a[i][j];
34+
a[i][j] = a[j][i];
35+
a[j][i] = temp;
36+
}
37+
}
38+
}
39+
printf("Now The Array is:\n");
40+
for (int i = 0; i < m; i++)
41+
{
42+
for (int j = 0; j < n; j++)
43+
{
44+
printf("%-5d ", a[i][j]);
45+
}
46+
printf("\n");
47+
}
48+
}
49+
void PrintArrayMatrix(int **array, int row, int column)
50+
{
51+
for (int i = 0; i < row; i++)
52+
{
53+
for (int j = 0; j < column; j++)
54+
{
55+
printf("%-5d\n", array[i][j]);
56+
}
57+
}
58+
}
59+
60+
int **ArrayTransposition(int **array, int row, int column)
61+
{
62+
int temp;
63+
for (int i = 1; i < row; i++)
64+
{
65+
for (int j = 0; j < i; j++)
66+
{
67+
temp = array[i][j];
68+
array[i][j] = array[j][i];
69+
array[j][i] = temp;
70+
}
71+
}
72+
}

0 commit comments

Comments
 (0)