C语言:初始化一个5X6的二维数组,编写函数,使数组中的第一列元素与最后一列元素对调,第2列元素与倒数第2列元素对调,依此类推。输出原始数组和对调后的数组。

#include<stdio.h>
int main()
{
int a[5][6];
int i,j;
for(i=0; i<5; i++)
{
for(j=0; j<6; j++)
scanf("%d",&a[i][j]);
}
swapt(a,3,4);
for(i=0; i<5; i++)
for(j=0; j<6; j++)
{
printf("%d",a[i][j]);
}
return 0;
}
int swapt(int a[5][6],int i,int j,int temp)
{
for(i=0; i<3; i++)
{
if(j<6)
{
temp=a[i][j];
a[i][j]=a[5-i][j];
a[5-i][j]=temp;
j++;
}

}

}
止步于此,求助555


#include<stdio.h>
int swapt(int a[5][6],int i,int j);//函数写主函数后面要提前声明 
int main()
{
    int a[5][6];
    int i,j;
    for(i=0; i<5; i++)
    {
        for(j=0; j<6; j++)
            scanf("%d",&a[i][j]);
    }
    for(i=0; i<5; i++){
        for(j=0; j<6; j++)
        {
            printf("%d\t",a[i][j]);
        }
        printf("\n"); 
    }
    swapt(a,5,6);
    for(i=0; i<5; i++){
        for(j=0; j<6; j++)
        {
            printf("%d\t",a[i][j]);
        }
        printf("\n"); 
    }

    return 0;
}
int swapt(int a[5][6],int i,int j)
{
    int temp;
    for(i=0; i<5; i++)
    {
        for(j=0; j<6/2; j++)
        {

            temp=a[i][j];
            a[i][j]=a[i][6-1-j];
            a[i][6-1-j]=temp;
        }
    }
}

img

img

你这么写是行在对调

有帮助的话采纳一下

#include<stdio.h>
int swapt(int a[5][6],int i,int j)
{
     int temp;
     for(i=0; i<3; i++)
         for(j=0;j<6;j++)
         {
            temp=a[i][j];
           a[i][j]=a[5-i][j];
           a[5-i][j]=temp;
        }
}
int main()
{
   int a[5][6];
   int i,j;
   for(i=0; i<5; i++)
   {
         for(j=0; j<6; j++)
              scanf("%d",&a[i][j]);
   }
   swapt(a,5,6);
   for(i=0; i<5; i++)
      for(j=0; j<6; j++)
      {
          printf("%d",a[i][j]);
     }
     return 0;
}