[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
楼主,你的代码中for 一句好象多余了呀,去掉,直接set "code=abcdefghijklmnopqrstuvwxyz"就可行了吧。

TOP

可_!n!的变量后面楼主你没有用到呵,因你后面用的是变量截取的方法。
不过,字母常量和数字变量一一对应的思路也不错,试编一个:
  1. @echo off&setlocal enabledelayedexpansion
  2. set "codes=a b c d e f g h i j k l m n o p q r s t u v w x y z"
  3. for %%a in (%codes%) do set /a n+=1&set "_!n!=%%a"
  4. set /p input=请输入1-26内的任意数值:
  5. :lp
  6. set /a _random=%random%%%26+1,a=_random-input
  7. if "%a:-=%" lss "2" goto lp
  8. if %_random% lss %input% (set temp=%input%&set input=%_random%&set _random=!temp!)
  9. set /a a=input+1,b=_random-1
  10. set /p=!_%input%!至!_%_random%!间的字母是:<nul
  11. for /l %%a in (%a%,1,%b%) do (set /p=!_%%a!<nul)
  12. pause>nul
复制代码

[ 本帖最后由 shqf 于 2009-3-1 23:36 编辑 ]
1

评分人数

TOP

返回列表