找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
楼主: wxcute

[ 新手习题 5 ] 批处理倒序输出

[复制链接]
发表于 2008-12-30 12:30:02 | 显示全部楼层
但是还是有一点疑问,为什么我从后往前去判断的时候,他就不停下来呢??

如果有高手指点一下就好了,谢谢。
发表于 2008-12-30 12:54:06 | 显示全部楼层
此例你还是没仔细思考啊,再运行过后看你的这句:
if "!str1:~-%n%,1!" neq "" goto loop
循环能停止吗?
  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set str=12345678
  4. echo !str:~-7,1!
  5. echo !str:~-8,1!
  6. echo !str:~-10,1!
  7. echo !str:~-10,1!
  8. echo !str:~-15,1!
  9. echo !str:~-20,1!
  10. echo !str:~-100,1!
  11. pause>nul
复制代码
发表于 2009-1-19 11:03:23 | 显示全部楼层
@echo off & setlocal EnableDelayedExpansion
set str=!好你,nc.emohtab.sbb
for /l %%i in (17,-1,0) do set /p=!str:~%%i,1!<nul
echo.
pause

评分

参与人数 1PB +2 收起 理由
wxcute + 2 nice

查看全部评分

发表于 2009-2-3 14:27:34 | 显示全部楼层
按本题的要求:
  1. @echo off
  2. set str=!好你,nc.emohtab.sbb
  3. set m=1
  4. :loop
  5. set /a n+=1
  6. if "%m%"=="" (echo.&pause) else (
  7. set /p t=!str:~-%n%,1!<nul
  8. set m=!str:~%n%!
  9. goto loop
  10. )
复制代码
任意输入字符串,反向输出
  1. @echo off
  2. set /p a=请输入字符串:
  3. set str=%a%
  4. set m=1
  5. :loop
  6. set /a n+=1
  7. if "%m%"=="" (echo.&pause) else (
  8. set /p t=!str:~-%n%,1!<nul
  9. set m=!str:~%n%!
  10. goto loop)
复制代码
我总感觉我写的代码麻烦了一点,不知道有没有按我这个思路,更简单一点的代码

[ 本帖最后由 zcy85611 于 2009-2-3 15:38 编辑 ]

评分

参与人数 1PB +3 收起 理由
wxcute + 3 GOOD

查看全部评分

发表于 2009-3-29 14:11:26 | 显示全部楼层
我的:

  1. @echo off
  2. set str=!好你,nc.emohtab.sbb
  3. :loop
  4. call, set /p=%%str:~-1%%<nul
  5. set str=%str:~0,-1%
  6. if "%str%"=="" goto end
  7. goto loop
  8. :end
  9. pause>nul
复制代码
发表于 2009-3-29 14:30:24 | 显示全部楼层
再来:
  1. @echo off
  2. set str=!好你,nc.emohtab.sbb
  3. for /l %%i in (17 -1 0) do call, set /p=%%str:~%%i,1%%<nul
  4. pause>nul
复制代码
发表于 2009-3-29 15:20:23 | 显示全部楼层
输入任意字符:
  1. @echo off
  2. set /p a=please input:
  3. set b=%a%
  4. echo.
  5. set /p=你输入的是:<nul
  6. :loop
  7. call, set /p=%%a:~0,1%%<nul
  8. set a=%a:~1%
  9. if "%a%"=="" goto zh
  10. set /a n+=1
  11. goto loop
  12. :zh
  13. echo.
  14. echo.
  15. set /p=倒序后是:<nul
  16. for /l %%i in (%n% -1 0) do call, set /p=%%b:~%%i,1%%<nul
  17. pause>nul
复制代码

评分

参与人数 1PB +4 收起 理由
wxcute + 4 很好。

查看全部评分

发表于 2009-3-29 15:34:04 | 显示全部楼层
@mshta vbscript:alert(StrReverse("!好你,nc.emohtab.sbb"))(close)
发表于 2009-3-29 15:49:04 | 显示全部楼层
任意字符串:
  1. @echo off
  2. del a.txt>nul 2>nul
  3. set /p a=please iput:
  4. echo %a%>a.txt
  5. echo.>>a.txt
  6. for /f "tokens=1 delims=:" %%i in ('findstr /o .* a.txt') do set /a l=%%i-2
  7. for /l %%k in (%l% -1 0) do call, set /p=%%a:~%%k,1%%<nul
  8. del a.txt>nul 2>nul
  9. pause>nul
复制代码

[ 本帖最后由 keen 于 2009-3-29 15:50 编辑 ]
发表于 2009-3-29 16:26:47 | 显示全部楼层
  1. @set /p s=Plz input:&&more /e +1 "%~f0"|call debug t %%s%%|findstr "^[^I\-0P]"&pause>nul&exit/b
  2. a100
  3. MOV     CL,[0080]
  4. DEC     CX
  5. MOV     AH,02
  6. MOV     BX,CX
  7. MOV     DL,[BX+0081]
  8. INT     21
  9. LOOP    0107
  10. INT     20

  11. g
  12. q
复制代码

[ 本帖最后由 rat 于 2009-3-29 17:52 编辑 ]
发表于 2009-3-29 21:08:17 | 显示全部楼层
for /l %%a in (17 -1 0) do call set /p=%%str:~%%a,1%%<nul
谁给解释一下上面一句啊?后面的set怎么不符合语法规则呢?可是运行是对的
发表于 2009-3-29 22:13:03 | 显示全部楼层

回复 26楼 的帖子

为什么说不符合语法规则?
发表于 2009-3-30 23:09:12 | 显示全部楼层
  1. @echo off&setlocal enabledelayedexpansion
  2. set str=!好你,nc.emohtab.sbb
  3. for /l %%i in (-1,-1,-18) do (
  4. set a=!str:~%%i,1!
  5. set b=!b!!a!)
  6. echo %b%
  7. pause
复制代码

评分

参与人数 1PB +2 收起 理由
wxcute + 2 加油。

查看全部评分

发表于 2009-5-5 23:05:26 | 显示全部楼层

我的代码

  1. @echo off
  2. set "str=!好你,nc.emohtab.sbb"
  3. set "var="
  4. :loop
  5. if not "%str:~1,1%"=="" (set "var=%str:~0,1%%var%"&set "str=%str:~1%"&goto loop)
  6. echo %str:~0,1%%var%
  7. Pause>nul
复制代码


[ 本帖最后由 sjzong 于 2009-5-5 23:06 编辑 ]
发表于 2011-8-4 17:08:01 | 显示全部楼层
回复 1# wxcute

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. set "a=!好你,nc.emohtab.sbb"
  4. for /l %%i in (17 -1 0) do (
  5.     set b=!a:~%%i,1!
  6.         set /p=!b!<nul
  7.         )
  8. pause>nul
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 00:29 , Processed in 0.025054 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表