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

[文本处理] [已解决]批处理如何实现正序与倒序合并输出

[复制链接]
发表于 2013-7-14 11:56:23 | 显示全部楼层 |阅读模式
本帖最后由 pcl_test 于 2016-7-15 10:16 编辑

我想生成一个正序与倒序合成的文本,要用二次嵌套,但表达出错,不知问题在哪里,请高手指点。
生成结果如:
1_10
2_9
3_8
4_7
5_6
6_5
7_4
8_3
9_3
10_1

我的问题代码:
  1. for /l %%a in (1,1,10) do (
  2. for /l %%i in (10,-1,1) do echo %%a_%%i
  3. )
复制代码
得出的结果是第一次的循环数与第二循环数分别组合,不知问题错在哪?

评分

参与人数 1PB +2 收起 理由
Batcher + 2 感谢给帖子标题标注[已解决]字样

查看全部评分

发表于 2013-7-14 12:34:00 | 显示全部楼层
因为内部循环中总是会循环运行10次显示,这样总的显示条数就成了100次了
真要双重循环就得加判断。或干脆用一层循环,观察另一个规律,前后两个数相加和为11
  1. @ECHO OFF
  2. SETLOCAL ENABLEDELAYEDEXPANSION
  3. FOR /L %%A IN (1 1 10)DO (
  4.  SET/aN=11-%%A
  5.  ECHO,%%A_!N!
  6. )
  7. PAUSE
复制代码
  1. @ECHO OFF
  2. FOR /L %%A IN (1 1 10)DO (
  3.  FOR /L %%B IN (1 1 10)DO (
  4.   SET/a"1/(%%A+%%B-11)"2>NUL||ECHO,%%A_%%B
  5.  )
  6. )
  7. PAUSE
复制代码

评分

参与人数 1技术 +1 收起 理由
Batcher + 1 乐于助人

查看全部评分

 楼主| 发表于 2013-7-14 16:52:44 | 显示全部楼层
回复 2# cutebe


    谢谢!领教。我的思路太窄,对循环没有理解透。学习了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-21 09:11 , Processed in 0.038164 second(s), 22 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

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