这样,你试试先进行行之间的互换,然后再进行列之间的互换。
#incloud"stdio.h"
int main(void)
{
int i,j,a[3][3],b[3][3],m,n;
printf("请输入行\n");
scanf("%d",&n);
printf("请输入列\n");
scanf("%d",&m);
printf("请输入元素\n");
for(i=0;i<n;i++)
{
for(j=0;j<m;i++)
{
scanf("%d",&a[i][j]);
}
}
printf("输出A是\n");
for(i=0;i<n;i++)
{
for(j=0;j<m;j++)
{
printf("%5d",a[i][j]);
}
}
\*假设先进行行之间两个相邻数的互换排列*\
for(i=0;i<n;i++)
{
for(j=0;j<m;m++)
{
int temp;
temp=a[i][j+1];
a[i][j+1]=a[i][j];
a[i][j]=temp;
}
\* 然后就是列*\
int temp;
temp=a[i+1][j];
a[i+1][j]=a[i][j];
a[i][j]=temp;
}
printf("互换后数组为\n%d",a[i][j]);
return0;
}
我的想法是这样的,可能我的书写会出现不规范,考虑的地方可能不周全,因为我看开始看C一个星期都不到,之前也没有接触过,如果有错误的地方,跪求大神指点,诚心求教。