黑马程序员技术交流社区
标题:
两个数的值的交换
[打印本页]
作者:
pingfan183
时间:
2014-11-1 23:20
标题:
两个数的值的交换
第一种:int a,b,c
a=b-a
b=b-a
a=a+b
第二种:
int a,b,c
a=b^a
b=b^a
a=a^b
第三种:
int a,b,c,temp;
int temp=a;
a=b;
b=temp;
作者:
doudou33420
时间:
2014-11-2 02:43
好吧 支持一下先....
作者:
lanwen963
时间:
2014-11-2 06:07
利用指针交换两个变量
#include <stdio.h>
int main()
{
// 两个变量的起始值a为10 b为11
int a = 10;
int b = 11;
// 定义3个指针
int *p1, *p2, *temp;
// p1,p2分别存储a,b的地址
p1 = &a;
p2 = &b;
// 利用中间指针交换a,b的值
temp = p1;
p1 = p2;
p2 = temp;
// 输出结果
printf("交换之后a=%d,b=%d\n", *p1, *p2);
return 0;
}
还有别的方法吗?
作者:
枫叶路过123
时间:
2014-11-2 18:42
用个中间变量,tmp, 把其中的一个赋给中间变量,,或者用数学方法,a=a+b;b=a-b;a=a-b;
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2