不涉及第三个变量交换两个变量的值

方法1:使用加减法

<?php

    $a = 1;
$b = 2;
$a = $a+$b;
$b = $a-$b;
$a = $a-$b;
printf("\$a=%d,\$b=%d", $a, $b);

输出: $a=2,$b=1

方法2:使用乘除法

<?php
$a = 3;
$b = 4;
$a = $a*$b;
$b = $a/$b;
$a = $a/$b;
printf("\$a=%d,\$b=%d", $a, $b);

输出: $a=4,$b=3

方法3:使用与(^)交换方法

<?php
$a = 5;
$b = 6;
$a = $a ^ $b;
$b = $a ^ $b;
$a = $a ^ $b; printf("\$a=%d,\$b=%d", $a, $b);

输出:$a=6,$b=5

方法4:使用list()方法

<?php
$a = 5;
$b = 6;
$a = [$a,$b];
list($b,$a) = $a;
printf("\$a=%d,\$b=%d", $a, $b);

输出:$a=6,$b=5

总结

以上为想出来的交换方法,肯定还有其他的方法,如果你有意的话,可以提出来,大家一起交流。

PHP-不涉及第三个变量交换两个变量的值的更多相关文章

  1. PHP中不用第三个变量交换两个变量的值

    相信大家在PHP面试或者学习中经常会遇到这个问题就是“不用第三个变量来交换两个变量的值”,今天正对这个问题来讨论一下: 第一种方法:首先会想到的 这种方法简单可行,顺利的交换了两个变量的值. 第二种方 ...

  2. php 不用第三个变量 交换两个变量的值汇总

    //方法一:$a ="abc";$b="def"; $a = $a^$b;$b = $b^$a;$a = $a^$b; //方法二:list($a, $b)= ...

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

    javascript在编程时经常会涉及到如何交换两个变量的值,例如常见的冒泡排序,快速排序等:下面我讲根据自己近期所学总结几种常见的交换两个变量值的方法: 方法一:借助第三方变量交换两个变量的值 va ...

  4. python不使用第三方变量,交换两个变量的值

    #不使用第三个变量交换两个变量的值 a=1 b=2 a,b=b,a#python的直接交换 #另一种交换方法 a=a+b#a=3 b=2 b=a-b#a=3 b=1 a=a-b#a=2 b=1 pri ...

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

    以前做过一道php面试题是这样的:不使用第三个变量实现交换两个变量的值.一般都是借助第三个中间变量来实现原来两个变量的值交换,但是这道题却要求不能使用中间变量,这对于初学者来说也算是一个难题了.网上找 ...

  6. python中如何调用函数交换两个变量的值

    python中如何调用函数交换两个变量的值 所有代码来在python3.7.1版本实现 以下实例通过用户输入两个变量,并相互交换:  方法一: def swap(a,b): # 创建临时变量,并交换 ...

  7. JS基础语法---练习:交换两个变量的值

    * JavaScript简称为JS * JavaScript是什么?     * 是一门脚本语言:不需要编译,直接运行     * 是一门解释性的语言:遇到一样代码就解释一行代码     * C#语言 ...

  8. 面试题-JavaScript交换两个变量的方法

    在平时的业务开发或者面试过程中,经常会遇到交换两个变量这种问题,于是,个人总结以下几种交换变量的方法: 1.方案一 使用一个临时变量来交换  2.方案二 使用ES6解构赋值语法来交换 3.方案三利用数 ...

  9. python学习笔记(八)函数return多个值,列表推导式和交换两个变量的值

    函数return多个值: 补充知识点:写代码得到时候少用全局变量: 1.不安全 2.会一直占着内存不释放 函数多个return值,那么会把这几个return的值都放在一个元组里面,然后返回 def h ...

随机推荐

  1. POJ 2018 Best Cow Fences (二分答案构造新权值 or 斜率优化)

    $ POJ~2018~Best~Cow~ Fences $(二分答案构造新权值) $ solution: $ 题目大意: 给定正整数数列 $ A $ ,求一个平均数最大的长度不小于 $ L $ 的子段 ...

  2. go入门收集(转)

    go mod 使用 原文地址: https://juejin.im/post/5c8e503a6fb9a070d878184a  

  3. springboot logback 配置 通配符不行就这样

    <?xml version="1.0" encoding="UTF-8"?><configuration> <property n ...

  4. MyCAT操作MySQL示例之E-R表

    接着上一篇继续..... E-R 关系的数据分片策略,子表的记录与所关联的父表记录存放在同一个数据分片上,即子表依赖于父表,通过表分组(Table Group)保证数据 Join 不会跨库操作. 表分 ...

  5. 数据生成c++程序模板

    这是一门技术活,ε=(´ο`*)))唉 #include<iostream> #include<cstring> #include<cstdio> #include ...

  6. Airtest断言方法

    1,第一种断言方式:验证UI界面 a.存在 b.不存在 2,断言第二种方式:验证数值 assert_equal:断言相等 assert_not_equal:断言不等 3,我发现Airtest一个bug ...

  7. 定时任务cron表达式解析

    cron表达式2种: Seconds Minutes Hours DayofMonth Month DayofWeek Year或 Seconds Minutes Hours DayofMonth M ...

  8. vue双向数据绑定v-model

    1.双向数据绑定 <input v-model="msg" /> <template> <div id="app"> < ...

  9. DataScope v1.0 多功能串口虚拟示波器使用介绍

    DataScope v1.0 特性 1.无需安装,启动即用;2.支持同时刷新多达10个通道的单精度浮点型数据;3.支持多种格式的通道数据导入.导出及回放;4.支持全屏浏览;5.支持图表数据统计.测量及 ...

  10. leetcode 238. 除自身以外数组的乘积 (python)

    给定长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积. 示例: 输入: [1 ...