两个变量交换值的几种方法

交换两个变量值得方法总结了一下
使用中间变量  

int n1=11, n2=10;
int tmp = n1;
n1 = n2;
n2 = tmp;
Printf("n1=%d,n2=%d", n1, n2);
return 0;  

 加减法

int n1 = 11, n2 = 10;
n1 = n1 + n2;
n2=n1-n2;
n1 = n1 - n2;
Printf("n1=%d,n2=%d", n1, n2);
return 0;

 堆栈

int n1 = 11, n2 = 10;
n2 = n1 + (n1 = n2) * 0;
Printf("n1=%d,n2=%d", n1, n2);
return 0;

 一个值经过同一个数的两次异或后值不变

int n1 = 11, n2 = 10;
n1 = n1 ^ n2;
n2 = n2 ^ n1;
n1 = n1 ^ n2;
printf("n1=%d,n2=%d", n1, n2);
return 0;
时间: 2024-10-24 09:55:57

两个变量交换值的几种方法的相关文章

两个变量交换的四种方法

对于两种变量的交换,我发现四种方法,下面我用Java来演示一下. 1.利用第三个变量交换数值,简单的方法. class TestEV //创建一个类 { public static void main(String[]args) { int x =5,y=10; //定义两个变量 int temp = x; //定义第三临时变量temp并提取x值 x = y; //把y的值赋给x y = temp; //然后把临时变量temp值赋给y System.out.println("x="+x

两个变量交换的四种方法(Java)

对于两种变量的交换,我发现四种方法,下面我用Java来演示一下. 1.利用第三个变量交换数值,简单的方法. (代码演示一下) class TestEV//创建一个类{ public static void main(String[]args) { int x =5,y=10; //定义两个变量 int temp = x; //定义第三临时变量temp并提取x值 x = y; //把y的值赋给x y = temp; //然后把临时变量temp值赋给y System.out.println("x=&

两个变量交换的四种方法(Java) 七种方法(JS)

对于两种变量的交换,我发现四种方法,下面我用Java来演示一下. 1.利用第三个变量交换数值,简单的方法. (代码演示一下) 1 class TestEV 2 //创建一个类 3 { 4 public static void main(String[]args) 5 { 6 int x =5,y=10; //定义两个变量 7 8 int temp = x; //定义第三临时变量temp并提取x值 9 x = y; //把y的值赋给x 10 y = temp; //然后把临时变量temp值赋给y

两个变量交换值的方法

使用中间变量 int n1=10, n2=20; int tmp = n1; n1 = n2; n2 = tmp; Console.WriteLine("n1={0},n2={1}", n1, n2); Console.ReadKey(); 2.加减法 int n1 = 10, n2 = 20; n1 = n1 + n2; n2=n1-n2; n1 = n1 - n2; Console.WriteLine("n1={0},n2={1}", n1, n2); Cons

JavaScript中交换两个变量的值得三种做法(代码实现)

javascript在编程时经常会涉及到如何交换两个变量的值,例如常见的冒泡排序,快速排序等:下面我讲根据自己近期所学总结几种常见的交换两个变量值的方法: 方法一:借助第三方变量交换两个变量的值 var num1=20; var num2=50; var temp=num1; num1=num2; num2=temp; console.log(num1);//在控制台输出交换后的num1=50 console.log(num2);//在控制台输出交换后的num2=20 方法二:借助加法计算,交换

【Linux】shell编程之给变量赋值的五种方法

1.  Shell中的变量类型 Shell中的变量可以分为环境变量.位置变量.预定义的特殊变量以及用户自定义变量. <!--[if !supportLists]-->2.  <!--[endif]-->环境变量 Shell中的环境变量是一类Shell预定义变量,是用于设置系统运行环境的变量,环境变量由系统统一命名.部分系统变量的值由系统设定,部分环境变量的值可以由用户给定. 环境变量的名称由大写字母组成,常用的Shell环境变量如下所示: HOME: 用户主目录的全路径名,cd $

只用两个变量交换值、杂记

第一种方法: 1 int a = 3; 2 int b = 5; 3 a = a + b; 4 b = a - b; 5 a = a - b; 缺点:a和b是很大的数的话容易溢出. 第二种方法: int a = 3; int b = 5; a = a ^ b; b = a ^ b; a = a ^ b; "^"是异或运算,这样就不会有溢出的问题了. 00000011 ^ 00000101 等于 00000110 00000110 ^ 00000101 等于 00000011 1.str

黑马程序员-C语言基础:两个变量交换值的方法

学习任何语言基础时,两个数值得交换是必须掌握的,下面简绍3中方式(c语言) 方法一:利用数学的计算技巧 1 #include <stdio.h> 2 int main() 3 { 4 5 int a =10, b = 20; 6 7 printf("交换前a=%d, b=%d\n", a, b); 8 9 a = a - b; 10 b = a + b; 11 a = b - a; 12 13 printf("交换后a=%d, b=%d\n", a, b

【转载】Python中如何高效实现两个字典合并,三种方法比较。

本文转载自:http://www.pythoner.com/13.html Python中将两个字典进行合并操作,是一个比较常见的问题.本文将介绍几种实现两个字典合并的方案,并对其进行比较. 对于这个问题,比较直观的想法是将两个字典做相加操作,赋值给结果字典,其代码为: 方法一: dictMerged1 = dict( dict1.items() + dict2.items() ) 然而,该方法合并时所用时间较长,效率更高的代码为: 方法二: dictMerged2 = dict( dict1,