批量输出字

时间:2018-09-19 20:17:18

标签: batch-file

@echo off
Title OutputWords
:Input
cls
echo Enter a number:
set /p input=
if %input% == "1" set /a word=One
if %input% == "2" set /a word=Two
if %input% == "3" set /a word=Three
if %input% == "4" set /a word=Four
if %input% == "5" set /a word=Five
if %input% == "6" set /a word=Six
if %input% == "7" set /a word=Seven
if %input% == "8" set /a word=Eight
if %input% == "9" set /a word=Nine
if %input% == "0" set /a word=Zero
goto Show
:Show
cls
echo Number: %word%
pause
goto Input

那么我该怎么做,以便当我写一个数字时,它用单词说出这个数字,为​​什么它不起作用?

1 个答案:

答案 0 :(得分:2)

我认为难题在于数字周围的引号。批处理对于引号和空格非常挑剔-尝试:

if %input%==1 set /a word=One

if "%input%"=="1" set /a word=One

您应该遇到的另一个问题是,当您使用set /a时,set期望您存储的值是一个方程式,它将对其求值。由于您没有进行数学运算,请尝试:

if %input%==1 set word=One

希望这会有所帮助。