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

try

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. for /f "tokens=1-2 delims= " %%i in (1.txt) do (
  4. set /a num1+=1
  5. if !num1! lss 10 (set num=000!num1!) else (
  6. if !num1! lss 100 (set num=00!num1!) else (
  7.   if !num1! lss 1000 (set num=0!num1!)
  8. )
  9. )
  10. set  #%%i_!num!=%%j
  11. )
  12. for /f "tokens=1-3 delims=#_=" %%i in ('set #') do (
  13. set /a #%%i_a+=%%k
  14. )
  15. for /f "tokens=1-3 delims=#_=" %%i in ('set #') do (
  16. set /a n+=1
  17. if "%%j" equ "a" (echo  !n! 合计 %%k) else (echo  !n! %%i %%k)
  18. )
  19. pause>nul
复制代码

[ 本帖最后由 curious 于 2009-6-6 19:47 编辑 ]

TOP

try

兄弟:最好把代码运行一下,现在和您的要求完全一样了。

TOP

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. ::构建变量
  4. for /f "tokens=1-2 delims= " %%i in (1.txt) do (
  5. set /a num1+=1
  6. if !num1! lss 10 (set num=000!num1!) else (
  7. if !num1! lss 100 (set num=00!num1!) else (
  8.   if !num1! lss 1000 (set num=0!num1!)
  9. )
  10. )
  11. set  #%%i_!num!=%%j
  12. )
  13. ::求和
  14. for /f "tokens=1-3 delims=#_=" %%i in ('set #') do (
  15. set /a #%%i_a+=%%k
  16. )
  17. ::输出
  18. for /f "tokens=1-3 delims=#_=" %%i in ('set #') do (
  19. set /a n+=1
  20. if "%%j" equ "a" (echo  !n! 合计 %%k) else (echo  !n! %%i %%k)
  21. )
  22. pause>nul
复制代码

TOP

返回列表