/*
寫一函數,將一個3x3的整型矩陣轉置,用指針實現
*/
#include <stdio.h>
#include <malloc.h>
#define SIZE 3
int main()
{
int **a = (int **)malloc(sizeof(int *)*SIZE);//二維數組動態分配內存
int i,j,t;
for(i=0; i<SIZE; i++)
*(a+i) = (int *)malloc(sizeof(int)*SIZE);//二維數組動態分配內存
printf("請輸入矩陣的元素:");
for(i=0; i<SIZE; i++)
for(j=0; j<SIZE; j++)
scanf("%d",*(a+i)+j);
for(i=0; i<SIZE; i++)//對矩陣進行轉置
for(j=i; j<SIZE; j++)
{
t = *(*(a+i)+j);
*(*(a+i)+j) = *(*(a+j)+i);
*(*(a+j)+i) = t;
}
printf("轉置之后為:");
for(i=0; i<SIZE; i++)
for(j=0; j<SIZE; j++)
printf("%d ",*(*(a+i)+j));
printf("\n");
return 0;
}