2012-10-24 31 views
1

嗨我不知道如何打印1到200列表3位數字格式。我可以打印從1到200,但不知道如何做格式的事情。請幫助批處理文件計數器

FOR /L %%A IN (1,1,200) DO (ECHO %%A) 

回答

5

您必須在前面設置足夠零的變量,然後取最後幾個字符給出正確的範圍。延遲擴展意味着在遇到do時,所使用的變量不會僅評估一次,而是每次使用該變量。

這個例子將打印1-200

@echo off 
setlocal enabledelayedexpansion 

for /l %%a in (1,1,200) do (
set test1=00%%a 
set test2=!test1:~-3! 
echo !test2! 
) 
+1

+1或者你可以從'IN(1000,1,1200)' –

3
@echo off 
title Counter 
SET /A XCOUNT=0 

:loop 
SET /A XCOUNT+=1 
IF "%XCOUNT%" == "301" (
    GOTO end 
) ELSE (
    IF %XCOUNT% LSS 100 (
     IF %XCOUNT% LSS 10 (
      echo 00%XCOUNT% 
      GOTO loop 
     ) ELSE (
      echo 0%XCOUNT% 
      GOTO loop 
     ) 
    ) ELSE (
    echo %XCOUNT% 
    GOTO loop 
    ) 
) 
:end 

pause 

我知道它的冗長,但嘿,它的工作原理!

+0

+1這個工作中讀取'〜1,3',但是肖恩·柴爾德的答案顯然更好 – jeb