两个数组交换(用指针)

来源:-

qq_追风少年_ozFGLY

2018-11-29 20:35

void Swap(int *x[],int *y[]);
int main()
{
 int i,j;
 int x[3]={1,2,3};
 int y[3]={4,5,6};
Swap(&x[3],&y[3]);
 for(i=0;i<3;i++)
 {
  printf("%d",x[i]);
 }
 for(j=0;j<3;j++)
 {
  printf("%d",y[j]);
 }
}

void Swap(int *x[],int *y[])
{
 int temp[3]={0,1,2};
  temp[0]=*x[0],temp[1]=*x[1],temp[2]=*x[2];
 *x[0]=*y[0],*x[1]=*y[1],*x[2]=*y[2];
 *y[0]=temp[0],*y[1]=temp[1],*y[2]=temp[2]; 
}
 为什么无法打印出来啊???


写回答 关注

1回答

  • 慕田峪5416121
    2018-12-01 18:05:52
    已采纳

    你应该这样改

    #include <stdio.h>


    void Swap(int x[],int y[]);

    int main()

    {

     int i,j;

     int x[3]={1,2,3};

     int y[3]={4,5,6};

    Swap(x,y);

     for(i=0;i<3;i++)

     {

      printf("%d",x[i]);

     }

     for(j=0;j<3;j++)

     {

      printf("%d",y[j]);

     }

    }

    void Swap(int x[],int y[])

    {

     int temp[3];

      temp[0]=x[0],temp[1]=x[1],temp[2]=x[2];

     x[0]=y[0],x[1]=y[1],x[2]=y[2];

     y[0]=temp[0],y[1]=temp[1],y[2]=temp[2];

    }


    qq_追风少...

    谢谢啊,可是你这个没有用到指针啊??

    2018-12-06 20:10:01

    共 1 条回复 >

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926020 学习 · 20793 问题

查看课程

相似问题