#include
int main()
{int i,j,t,a[3][3]={{1,2,3},{4,5,6},{7,8,9}};
printf("原来的数组:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
for(i=0;i<2;i++)
for(j=i+1;j<3;j++)
{t=a[i][j];a[i][j]=a[j][i];a[j][i]=t;}
printf("转置后的数组:\n");
for(i=0;i<3;i++)
{
for(j=0;j<3;j++)
printf("%d ",a[i][j]);
printf("\n");
}
getch();
return 0;
}
#include
void main()
{ int a[3][3];
int i,j,m=0;
for(i=0;i<3;i++) //对a[3][3]赋值
for(j=0;j<3;j++,m++)
a[i][j]=m;
for(i=0;i<3;i++)//输出原矩阵的值
{{ for(j=0;j<3;j++)
printf("%3d ",a[i][j]);
}
printf("\n");
}
//交换的实现如下
for(i=0;i<3;i++)
for(j=0;j {int temp;
temp=a[i][j];
a[i][j]=a[j][i];
a[j][i]=temp;
}
//输出转置后的矩阵
printf("\n 转换后的矩阵如下:\n");
for(i=0;i<3;i++)
{{ for(j=0;j<3;j++)
printf("%3d ",a[i][j]);
}
printf("\n");
}
}
/* 函数功能: 对任意row行col列的矩阵转置
函数入口参数: 指向一维整型数组的指针变量a,指向单元存放转置前的矩阵元素
整型变量row,矩阵的行数即二维整型数组的行数
整型变量col,矩阵的列数即二维整型数组的列数
函数出口参数: 指向一维整型数组的指针变量at,指向单元存放转置后的矩阵元素
函数返回值: 无
*/
void convert(int (*a)[COL], int (*at)[ROW], int row, int col)
{
int i, j;
for (i=0; i
for (j=0; j
*(*(at+j)+i) = *(*(a+i)+j);
}
}
}
另外,虚机团上产品团购,超级便宜
a[3][3]
for(int i=0;i<3;i++)
for(int j=0;j { int temp=a[i][j];
a[i][j]=a[j][i]; a[j][i]=temp;
}
建议你和编程老师当面探讨一下这个问题,注意学习一下方法