上次有一个非常牛掰的师兄考我一个问题: 如何在不引用其他变量的情况下,去交换两个值? 刚开始我有点蒙圈:一般我的做法是引入一个变量,直接交换即可:
#include <stdio.h>
int main()
{
int i
=4,j
=7;
int x
;
x
=i
;
i
=j
;
j
=x
;
printf(" i=%d \n j=%d",i
,j
);
getch();
return 0;
}
如果要用两个值去交换,那么肯定就要引入运算了。胡乱算一下,哎还真算出来了。 其实也非常简单,也是三条语句:i=i+j; j=i-j; i=i-j;
#include <stdio.h>
int main()
{
int i
=4,j
=7;
i
=i
+j
;
j
=i
-j
;
i
=i
-j
;
printf(" i=%d \n j=%d",i
,j
);
getch();
return 0;
}