黑马程序员技术交流社区

标题: 两个经典的 数据交换 例子 [打印本页]

作者: llo    时间: 2015-7-12 18:11
标题: 两个经典的 数据交换 例子
  1. #include<stdio.h>
  2. void swap(int x,int y)
  3. {
  4.         int temp;
  5.         temp=x;
  6.         x=y;
  7.         y=temp;
  8.         printf("swap内部x=%d,y=%d\n",x,y);
  9. }
  10. int main()
  11. {
  12.         int a,b;
  13.         printf("请输入两个数:\n");
  14.         scanf("%d,%d",&a,&b);
  15.         printf("交换前:a=%d,b=%d\n",a,b);
  16.         swap(a,b);
  17.         printf("交换后:a=%d,b=%d\n",a,b);
  18.         return 0;
  19. }
复制代码

输入 2,3
结果是:交换前: a=2,b=3
             swap内:a=3,b=2
              交换后: a=2,b=3
  1. #include<stdio.h>
  2. void swap(int *x,int *y)
  3. {
  4.         int temp;
  5.         temp=*x;
  6.         *x=*y;
  7.         *y=temp;
  8.         printf("swap内部x=%d,y=%d\n",*x,*y);
  9. }
  10. int main()
  11. {
  12.         int a,b;
  13.         printf("请输入两个数:\n");
  14.         scanf("%d,%d",&a,&b);
  15.         printf("交换前:a=%d,b=%d\n",a,b);
  16.         swap(&a,&b);
  17.         printf("交换后:a=%d,b=%d\n",a,b);
  18.         return 0;
  19. }
复制代码

输入 2,3
结果是:交换前: a=2,b=3
             swap内:a=3,b=2
              交换后: a=3,b=2
作者: 优米诺    时间: 2015-7-13 23:38
第一个运行到最后被内存释放了,第二个用指针交换的,基础题
作者: llo    时间: 2015-7-14 21:30
优米诺 发表于 2015-7-13 23:38
第一个运行到最后被内存释放了,第二个用指针交换的,基础题

是啊   这两个例子比较经典啊




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2