不使用中间变量,交换int型的 a, b两个变量的值。

代码如下:

//by ppchen
var a = 10, b = 2;
a = a + b;
b = a - b;
a = a - b;

代码如下:

//by Mr.司马
var a = 10000,b=245
a = a^b;
b = b^a;
a = a ^b;

代码如下:

//by cloudgamer
var a = 33,b=44
a=[a,b]
b=a[0]
a=a[1]

代码如下:

//by Mr.司马
var a = 23,b=454;
a = {a:b,b:a};
b = a.b;
a = a.a;

评:1、2种解法是普遍解,只能交换数字,而3、4种则适用性更广。

(0)

相关推荐

  • 不使用中间变量,交换int型的 a, b两个变量的值。

    复制代码 代码如下: //by ppchen var a = 10, b = 2; a = a + b; b = a - b; a = a - b; 复制代码 代码如下: //by Mr.司马 var a = 10000,b=245 a = a^b; b = b^a; a = a ^b; 复制代码 代码如下: //by cloudgamer var a = 33,b=44 a=[a,b] b=a[0] a=a[1] 复制代码 代码如下: //by Mr.司马 var a = 23,b=454;

  • python交换两个变量的值方法

    大部分语言,例如c语言,交换两个变量的值需要使用中间变量. 例如交换a,b 伪代码: tmp = a a = b b = tmp python里面可以实现无临时变量的交换 (a,b) = (b,a) 对于它的交换原理我深感好奇,因为这意味着python解释器很有可能做了件更多的工作. 如果说变量可以直接交换,那么列表的元素呢? lists[i], lists[j] =lists[j], lists[i] 是否可以实现列表i,j元素的互换,如果可以实现,原理是什么? 可以实现交换,至于原理,可以用

  • Python3之不使用第三方变量,实现交换两个变量的值

    method 1: a,b = b,a method 2: a = a+b b = a-b a = a-b 以上这篇Python3之不使用第三方变量,实现交换两个变量的值就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • java如何交换这两个变量的值方法介绍

    1.借助中间量交换 int x = 10; int y = 20; int temp = x; x = y; y = temp; 此种方法可以将中间量看成空杯,即把temp看成是空杯, 把x看成是装有白酒的杯子,把y看成是装有红酒的杯子 int temp = x; 把白酒倒到空杯中,此时temp装有白酒,x变成空杯 x = y; 把y中的红酒倒到x空杯中,此时x装有红酒,y变成空杯 y = temp; 把白酒倒到y空杯中,此时x装有红酒,y装有白酒,实现x和y的互换 2.数值相加减交换 int

  • C语言中交换int型变量的值及转换为字符数组的方法

    不使用其他变量交换两个整型的值: #include <stdio.h> void main(){ int a = 3; int b = 4; a = a ^ b;//使用异或交换 b = b ^ a; a = a ^ b; printf("%d, %d\n", a, b); a = a - b;//使用加减交换 b = a + b; a = b - a; printf("%d, %d\n", a, b); a ^= b ^= a ^= b; printf

  • PHP不用第三变量交换2个变量的值的解决方法

    以前做过一道php面试题是这样的:不使用第三个变量实现交换两个变量的值.一般都是借助第三个中间变量来实现原来两个变量的值交换,但是这道题却要求不能使用中间变量,这对于初学者来说也算是一个难题了.网上找到的几种方法总结如下: 复制代码 代码如下: //字符串版本 结合使用substr,strlen两个方法实现$a="a";$b="b";echo '交换前 $a:'.$a.',$b:'.$b.'<br />';$a.=$b;$b=substr($a,0,(s

  • mysql日期date型和int型互换的方法

    一.date型转换成int型 UNIX_TIMESTAMP('1997-10-04 22:23:00')  =====> 875996580 二.int型转换成date型 FROM_UNIXTIME(875996580) =====> '1997-10-04 22:23:00' PHP里面将int型数据转换成日期输出 echo date('Y-m-d',$date); PHP里面将date型数据输出: echo $date; PHP里面将date型数据转换成int型: strtotime($d

  • 用32位int型变量表示单引号括起来的四个字符的深入探讨

    在C.C++中可以用32位int型变量表示单引号括起来的四个字符,例如下面代码中的示例: 复制代码 代码如下: // 字符c的16进制值是0x63,字符o的16进制值是0x6f, // 字符n的16进制值是0x6e int what = 'conn'; printf("The address of what is 0x%x \n", &what); printf("what 0x%x \n", what); if (what == 0x636f6e6e) {

  • JS实现不用中间变量temp 实现两个变量值得交换方法

    1.使用加减法; var a=1; var b=2; a=a+b; b=a-b; a=a-b; 2.使用乘除法(乘除法更像是加减法向乘除运算的映射) var a=1; var b=2; a = a * b; b = a / b; a = a / b; 注意:该方法可以交换整型和浮点型数值的变量,但在处理浮点型的时候有可能出现精度的损失  而且乘除时b不能为0; 3.使用数组的灵活性 var a=1; var b=2; a=[b,b=a][0]; 总结 以上所述是小编给大家介绍的JS实现不用中间变

  • Java利用移位运算将int型分解成四个byte型的方法

    package 移位运算; public class 移位运算 { public static void main(String[] args) { //00000111 01011011 11001101 00010101 int n=123456789; //n为需要进行移位处理的32位int型初始值 byte[] a =chai(n); for (int i = 0; i < a.length; i++) { byte b=a[i]; System.out.print(b+" &qu

随机推荐