1

嗨,我想知道如何以 3 位格式打印 1 到 200 的列表。我可以打印 1 到 200,但不知道如何进行格式化。请帮忙

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

2 回答 2

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!
)
于 2012-10-24T21:24:07.030 回答
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

我知道它很长,但是嘿,它有效!

于 2012-10-25T12:33:33.067 回答