谭浩强C语言第五版的一些课后习题
第八章 第九题
3×3矩阵转置
int main(){
void move(int *p1);
int a[3][3];
printf("输入3行3列的矩阵:\n");
int i,*p;
for(i=0;i<3;i++){
scanf("%d%d%d",&a[i][0],&a[i][1],&a[i][2]);
}
p=&a[0][0];//将第一个元素的地址赋给指针p
printf("原矩阵为:\n");
for(i=0;i<3;i++){
printf("%d %d %d\n",a[i][0],a[i][1],a[i][2]);
}
move(p);
printf("\n移动后的矩阵为:\n");
for(i=0;i<3;i++){
printf("%d %d %d\n",a[i][0],a[i][1],a[i][2]);
}
}
void move(int *p1){
int i,j,t;
for(i=0;i<3;i++){
for(j=i;j<3;j++){
t=*(p1+3*i+j);
*(p1+3*i+j)=*(p1+3*j+i);
*(p1+3*j+i)=t;
}
}
}版权声明:本文为weixin_44572229原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。