[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
这样用 %%i+1 ?

TOP

本帖最后由 terse 于 2011-4-27 13:45 编辑

老东西翻出来
  1. @echo off&setlocal enabledelayedexpansion
  2. for /l %%i in (1,1,500) do set var=!var! !random!
  3. set "var=!var! "
  4. for /l %%i in (1,1,500) do (
  5.     for %%j in (!var!) do (
  6.         if defined str (   
  7.            if !str! gtr %%j (
  8.               set str=%%j&set d=%%j
  9.            ) else if !str! equ %%j set "d=!d! %%j"
  10.         ) else set str=%%j&set d=%%j
  11.     )
  12.     for %%j in (!str!) do set "var= !var: %%j = ! "
  13.     set var=!var:  = !
  14.     set var1=!var1! !d!&set str=
  15. )
  16. echo!var1!
  17. pause
复制代码

TOP

16# applba
这个有限制的 所以不通用 仅当娱乐
另你一楼的  变量var 是多余的 可去除

TOP

18# applba
虽说在 15楼代码有字符长度限制 但效率并不低 故放上来的  下面就是所谓的冒泡把
  1. @echo off&setlocal enabledelayedexpansion
  2. set n=500
  3. for /l %%i in (1,1,!n!) do set /a _%%i=!random!
  4.     for /l %%i in (1,1,!n!) do (
  5. set /a m=%%i+1
  6. for /l %%j in (!m!,1,!n!) do if !_%%i! gtr !_%%j! set/a _%%j=_%%i,_%%i=!_%%j!
  7.         echo !_%%i!
  8.     )
  9. pause
复制代码

TOP

返回列表