[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. set a=2
  3. set b=3
  4. set a=%b% & set b=%a%
  5. echo a变为%a% b变为%b%
  6. pause
复制代码
噢,24,25楼的用了

TOP

一般解

@echo off
set /p a=请输入a:
set /p b=请输入b:
set /a a+=%b%
set /a b=%a%-%b%
set /a a-=%b%
echo a=%a% b=%b%
pause>nul
此程序只能a,b是数值时可行,有字母就不行,上面的程序却无论a,b是数值还是字母,甚至两者混合都可行

TOP

巧解

@echo off
set /p a=请输入a:
set /p b=请输入b:
set a=%b% & set b=%a%
echo a=%a% b=%b%
pause>nul
里面涉及到变量延迟,我就不过多解释了,有兴趣有多找些相关资料学习
1

评分人数

    • wxcute: 请用CODE将代码闭合,方便他人复制阅读。[q ...PB + 1

TOP

数值交换
@echo off&set/a A=2,B=3
set/a A=B,B=%A%
echo A=%A% , B=%B%&pause>nul


任何变量
@echo off&set A=上 &set B=下
set A=%B% &set B=%A%
echo A=%A% , B=%B% &pause>nul
1

评分人数

    • wxcute: 鼓励一下,不错。PB + 1

TOP

很好!!有的真的有意思!

TOP

%E5%9B%9E%E5%A4%8D 21楼 %E7%9A%84%E5%B8%96%E5%AD%90

学习中…………………

TOP

根据8楼的启发   发现这样也行
  1. @echo off
  2. set /a a=5
  3. set /a b=3
  4. for /l %%i in (1,1,1) do set a=%b%&set b=%a%
  5. echo %a%
  6. echo %b%
  7. pause
复制代码
跟变量延迟一个道理  吼吼  能不能给我点分呀
1

评分人数

    • wxcute: 何必拿个FOR来掩人耳目呢,你没发现它很多余 ...PB + 1

TOP

刚发现我跟9楼的一样  
同时佩服8楼  这个代码最好

TOP

  1. @echo off
  2. set /a a=5
  3. set /a b=3
  4. set /a a=%a%+%b%
  5. set /a b=%a%-%b%
  6. set /a a=%a%-%b%
  7. echo %a%
  8. echo %b%
  9. pause
复制代码
1

评分人数

    • wxcute: 加减交换法,还是很好的。PB + 2

TOP

xchg指令

  1. @echo off
  2. set a=2
  3. set b=3
  4. (echo a100&echo mov ax,%a%&echo mov bx,%b%&more /e +5 "%~f0")|debug|find /v ""
  5. pause&exit/b
  6. xchg ax,bx
  7. t=100 3
  8. q
复制代码

TOP

@echo off
set/p a=请输入a的数值 & set/p b=请输入b的数值
echo a是%a%
echo b是%b%
goto x
set/p a=%b% & set/p b=%a%
:x
echo ab交换后a是%b%
echo ab交换后b是%a%
pause

TOP

回复 3楼 的帖子

这个代码运行不了。。

TOP

回复 1楼 的帖子

  1. @echo off
  2. set a=2
  3. set b=3
  4. echo.------------
  5. set tt=a
  6. set a=b
  7. set b=tt
  8. echo.ok
复制代码
1

评分人数

    • wxcute: 中间变量交换法。PB + 4

TOP

set c=%a%
set a=%b%
set b=%c%
echo %a%
echo %b%
1

评分人数

    • wxcute: ^_^ 你够懒的,边a、b等于什么你都不写PB + 2

TOP

这个有问题吗?

echo 输入a=
set/p a=
echo 输入 b=
set/p b=
set c=%a%
set a=%b%
set b=%c%
pause
1

评分人数

    • wxcute: 代码没问题,回帖有点问题。代码用[code][/ ...PB + 3

TOP

返回列表