嗨我想知道怎样用3位数格式打印1到200的列表。我可以从1到200打印,但不知道如何做格式的事情。请帮忙
FOR /L %%A IN (1,1,200) DO (ECHO %%A)
答案 0 :(得分:4)
您必须在前面设置一个具有足够零的变量,然后取最后几个字符以给出正确的范围。延迟扩展意味着在遇到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 :(得分: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
我知道它冗长,但嘿,它有效!