返回列表 发帖
学习之后再减减,不过好像少不了多少了。。。
  1. @echo off&setlocal enabledelayedexpansion
  2. set capital=零壹贰叁肆伍陆柒捌玖
  3. set unit=仟佰拾万仟佰拾亿仟佰拾万仟佰拾元角分
  4. set n=0&set en=
  5. set /p num=输入需转换的金额(不超过万亿元):
  6. set int=%num:.=&set dec=%
  7. set dec=!dec!00
  8. set num=!int!!dec:~0,2!
  9. if not "%int:~16%$" == "$" echo 靠!你太高估我的能力啦!&pause>nul&goto :eof
  10. for /l %%i in (-1,-1,-18) do (
  11.         for /f %%a in ("!num:~%%i,1!") do (
  12.                 set en=!capital:~%%a,1!!unit:~%%i,1!!en!
  13.         )
  14.         if "!num:~%%i!" equ "!num!" goto :ok
  15. )
  16. :ok
  17. set en=!en:零角零分=整!
  18. for %%i in (拾,佰,仟,角,零,零) do set en=!en:零%%i=零!
  19. for %%i in (亿,万,元) do set en=!en:零%%i=%%i!
  20. set en=!en:零分=!&set en=!en:亿万=亿!
  21. echo %en%
  22. pause
复制代码

TOP

11楼一句话,又多了两句代码:

  1. @echo off&setlocal enabledelayedexpansion
  2. set capital=零壹贰叁肆伍陆柒捌玖
  3. set unit=仟佰拾万仟佰拾亿仟佰拾万仟佰拾元角分
  4. set n=0&set en=
  5. set /p num=输入需转换的金额(不超过千万亿元):
  6. set int=%num:.=&set dec=%
  7. set dec=!dec!00
  8. set num=!int!!dec:~0,2!
  9. if not "%int:~16%$" == "$" echo 靠!你太高估我的能力啦!&pause>nul&goto :eof
  10. for /l %%i in (-1,-1,-18) do (
  11.         for /f %%a in ("!num:~%%i,1!") do (
  12.                 set en=!capital:~%%a,1!!unit:~%%i,1!!en!
  13.         )
  14.         if "!num:~%%i!" equ "!num!" goto :ok
  15. )
  16. :ok
  17. set en=@!en:零角零分=整!
  18. for %%i in (拾,佰,仟,角,零,零) do set en=!en:零%%i=零!
  19. for %%i in (亿,万,元) do set en=!en:零%%i=%%i!
  20. set en=!en:零分=!&set en=!en:亿万=亿!&set en=!en:@元=@!&set en=!en:@零=@!
  21. echo %en:@=%
  22. pause
复制代码

TOP

返回列表