中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-09-27 15:49
共 47,813 主题排行 / 349,918 发帖 / 今日 0 篇 / 48,276 会员排行
DOS批处理 & 脚本技术(批处理室) » 求嗰随机数排列
可打印版本  1,119 / 8
第1楼 forkfan 发表于 2008-04-05 01:04
初级用户 发帖 12 积分 27
求嗰随机数排列
求A-z的随机排列..谢谢
第2楼 26933062 发表于 2008-04-05 01:25
银牌会员 发帖 879 积分 2,268
:
第3楼 forkfan 发表于 2008-04-05 01:29
初级用户 发帖 12 积分 27
谢谢..
第4楼 terse 发表于 2008-04-05 02:07
银牌会员 发帖 946 积分 2,404
@echo off
set "str=abcdefghijklmnopqrstuvwxyz"
set n=27
:loop
set/a n-=1
set/a s=%random%%%%n%
call set var=%%str:~%s%,1%%
set var1=%var%%var1%
call set str=%%str:%var%=%%
if defined str goto loop
echo %var1%
pause
第5楼 aliang10520 发表于 2008-04-05 10:21
初级用户 发帖 24 积分 47
支持
第6楼 bat-zw 发表于 2008-04-06 04:01
金牌会员 发帖 1,276 积分 3,105
我也来一个:
第7楼 26933062 发表于 2008-04-06 05:27
银牌会员 发帖 879 积分 2,268
:

[ Last edited by 26933062 on 2008-4-6 at 05:28 AM ]
第8楼 PPdos 发表于 2008-04-06 07:28
高级用户 发帖 268 积分 783
我替楼兄做个注:

@echo off&setlocal EnableDelayedExpansion
set "code=ABCDEFGHIJKLMNOPQRSTUVWXYZ"
for /l %%a in (26 -1 1) do (
set /a w=!random!%%%%a
1.随机取余数,余数w小于等于25
call set var=!var!%%code:~!w!,1%%
2.取变量code的第w+1位放入变量var并不断累积
call set code=%%code:!var:~-1!=%%
3.删除变量code中已截取的字母,将其继续循环
)
echo %var%
pause


这个第三步 妙 我加分!
第9楼 26933062 发表于 2008-04-06 08:47
银牌会员 发帖 879 积分 2,268
呵呵,再来个另类点的。
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023