:: 生成 1--100 的随机数序列, 删除掉 后门生编号, 平分进 10 个班,
:: 但 X-10 班会少分两个学生.
:: 将 3 班的第 1 个 B 类学生剪切给 10 班, 再把 B-060 加入 3 班
:: 将 8 班的第 1 个 C 类学生剪切给 10 班, 再把 C-049 加入 8 班 | @echo off&setlocal enableDelayedExpansion&mode con cols=126 | | for /l %%i in (1001 1 1100) do set "sStu=!sStu!S-%%i" | | set "sStu=!sStu:-1=-!" | | for %%a in (A B C D) do ( | | set sS=!sStu:S=%%a!& set sS=!sS:B-060=!& set "sS=!sS:C-049=!" | | set "UP=100" & if %%a geq B if %%a leq C set "UP=99" | | for /l %%x in (1 1 10) do (for /l %%i in (1 1 10) do ( | | if !UP! gtr 0 ( set /a "start=!random!%%UP*5" | | for %%s in (!start!) do (for %%c in (!sS:~%%s^,5!) do ( | | set "X-%%x=!X-%%x! %%c"& set "sS=!sS:%%c=!"& set /a UP-=1 | | ) ) ) ) ) ) | | echo 开后门之前:&set X-& set "X-10=!X-10!!X-3:~60,6!!X-8:~120,6!" | | set X-3=!X-3:~0,60! B-060!X-3:~66!& set "X-8=!X-8:~0,120! C-049!X-8:~126!" | | echo 开后门之后:&set X-&pauseCOPY |
|