http://blog.csdn.net/GarfieldEr007/article/details/48314295 本文采用三种方式实现两个数之间的交换,分别是①借助辅助变量temp的swap函数,②采用加减法的swap函数 ,③使用异或运算的swap函数. 现在直奔主题: 1.借助辅助变量temp的swap函数 I.引用类型形参 void swap(int &a, int &b) //引用类型方式 { int temp; //辅助变量 temp = a; a = b; b = tem
交换两个变量的值很简单. 比如 int a = 1; b = 2; 交换a b的值 这个很简单 很容易想到的是找个中间变量比如 int temp = a; a = b; b = temp; 不需要中间变量可不可以? 当然是可以的. 比如 [加减法] a = a + b; b = a - b; a = a - b; 该方法可以交换整型和浮点型数值的变量,但在处理浮点型的时候有可能出现精度的损失,例如对数据: a = 3.123456 b = 1234567.000000 交换后各变量值变为:
点击查看代码 #include <iostream> using namespace std; void swap(int* a,int* b) //函数参数为指针形式 { int p = *a; *a = *b; *b = p; } int main() { int a = 5; int b = 6; cout << "a交换前的地址:"<<&a<<endl<<"b交换前的地址:"<<
1. 创建中间变量 这是最快也是最简单的办法,例如: #include<stdio.h> int main(){ int a=10; int b=20; int temp; printf("交换前a,b的值为:\n"); printf("a=%d\n",a); printf("b=%d\n",b); temp=a; b=a; a=temp; printf("交换后a,b的值为:\n"); printf("