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

如果用别的语言的话,没这么好利用哟~
我亦有个思路,代码就没那么短了。
  1. @echo off &title Made by PakTC
  2. setlocal enabledelayedexpansion
  3. for /l %%a in (1,1,100) do (set number%%a=%%a)
  4. for /l %%a in (100,-1,1) do (
  5.   set /a rand=!random! %% %%a + 1
  6.   set /a new%%a=number!rand!,TempNum=number!rand!
  7.   set /a number!rand!=number%%a,number%%a=TempNum
  8. )
  9. for /l %%a in (1,1,100) do echo,!new%%a!
  10. pause
复制代码
Press Any Key To Continue...

TOP

这不是通过100次随机互换

是主次地缩小范围
第一次获取1~100 随机数
然后 获取的那个数与100调换

第二次 就获取1~99内随机数

=======================
获取并缩小范围,把拿过的数扔出范围。


这样就避免了重复,也保证了随机性
Press Any Key To Continue...

TOP

返回列表