編寫一個函式實現矩陣的轉置運算
阿新 • • 發佈:2019-02-11
#include <stdio.h>
void reverse(int (*a)[4],int (*b)[3]);
void Output(int (*b)[3],int n,int m);
void Input(int (* a)[4],int n,int m);
int main()
{
int a[3][4],b[4][3];
Input(a,3,4);
printf("輸出資料a[3][4]:\n");
Output(a,3,4);
reverse(a,b);
printf("輸出資料b[4][3]:\n");
Output(b,4,3);
return 0;
}
void Input(int (* a)[4],int n,int m)
{
int i,j;
printf("請輸入3*4個數據:");
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d",(*(a+i)+j));
}
void Output(int (*b)[3],int n,int m)
{
int i,j;
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
printf("%d\t",*(*(b+i)+j));
printf("\n");
}
}
void reverse(int (*a)[4],int (*b)[3])
{
int i,j;
for(i=0;i<4;i++)
for(j=0;j<3;j++)
b[i][j]=a[j][i];
}