[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /l %%i in (0,1,1200) do (
  4.      set a=%%i
  5.      if "!a:~0,1!"=="!a:~-1!"  (
  6.        if "!a:~1,1!"=="" (
  7.          echo !a!>>1.txt
  8.        ) else (
  9.                 if "!a:~1,1!"=="!a:~-2,1!" (
  10.                   if "!a:~3,1!"=="" (
  11.                     echo !a!>>1.txt
  12.                   ) else echo 你的数太大啦!&goto  out
  13.                 )
  14.          )
  15.      )
  16. )
  17. :out
  18. pause
复制代码
时光荏苒||新陈代谢&&涛声依旧||本性难移

TOP

回复 29# 悬崖之树
这个代码有问题,并不是只要测试到六位数就提示“你输入的数太大了”,而是要到类似 “124521” 之类的六位数才会提示。下面是改进后的
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. if exist 1.txt del 1.txt
  4. :ks
  5. set /p num=请输入一个最多5位的正整数:
  6. if %num% gtr 999999 echo 你的数太大了,请重新输入!& goto ks
  7. for /l %%i in (0,1,%num%) do (
  8.      set a=%%i
  9.      if "!a:~0,1!"=="!a:~-1!"  (
  10.        if "!a:~3,1!"=="" (
  11.          echo !a!>>1.txt
  12.        ) else (
  13.                 if "!a:~1,1!"=="!a:~-2,1!" (
  14.                   if "!a:~5,1!"=="" (
  15.                     echo !a!>>1.txt
  16.                   )
  17.                 )
  18.          )
  19.      )
  20. )
  21. echo 结果已经保存在当前目录下的1.txt文件中
  22. pause
复制代码
时光荏苒||新陈代谢&&涛声依旧||本性难移

TOP

返回列表