赞
踩
第一种:利用指针进行交换
- #include<stdio.h>
- #include<iostream>
- #include<algorithm>
- using namespace std;
- void swap(int *a, int *b){
- int p;
- p = *a;
- *a = *b;
- *b = p;
- }
- int main(int argc, char const *argv[])
- {
- int a = 3, b = 2;
- swap(a, b);
- printf("%d %d\n", a, b);
- return 0;
- }
第二种:使用位运算进行交换
- #include<stdio.h>
- #include<iostream>
- #include<algorithm>
- using namespace std;
- void swap(int &a, int &b){
- a ^= b ^= a ^= b;
- }
- int main(int argc, char const *argv[])
- {
- int a = 3, b = 2;
- swap(a, b);
- printf("%d %d\n", a, b);
- return 0;
- }
第三种:使用加减法进行交换
- #include<stdio.h>
- #include<iostream>
- #include<algorithm>
- using namespace std;
- void swap(int &a, int &b){
- a = a + b;
- b = a - b;
- a = a - b;
- }
- int main(int argc, char const *argv[])
- {
- int a = 3, b = 2;
- swap(a, b);
- printf("%d %d\n", a, b);
- return 0;
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。