Board logo

标题: [出题]输出菱形图案并居中显示 [打印本页]

作者: pusofalse     时间: 2008-8-1 03:54    标题: [出题]输出菱形图案并居中显示
通过批处理输出如下图案,并在CMD原始窗口大小中居中显示。
要求,不生成临时文件,代码尽量高效简洁。


o
o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o o o o o o o o o o o o o o o o o o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o
o


Last edited by pusofalse on 2008-8-1 at 04:15 AM ]

作者: bat-zw     时间: 2008-8-1 12:53

@echo off&setlocal enabledelayedexpansion
for /l %%i in (1,1,80) do set "kong=!kong! "
set "_1=%kong:~,40%○"&echo !_1!
set "_2=%kong:~,38%○ ○"&echo !_2!
for /l %%i in (3,1,21) do (
set /a num+=1
call,set "str=○%%kong:~,!num!%%○%%kong:~,!num!%%○"
set "var=!str!%kong%"
set "var=!var:~,80!"
call :lp
set "_%%i=!var:~1!!str!"&echo !_%%i!
)
set /p=%kong:~,18%<nul&for /l %%i in (1,1,23) do set /p=○<nul
echo.&for /l %%i in (21,-1,1) do echo !_%%i!
pause>nul&goto :eof
:lp
set "var=!var:%str%=!"
set "var=%var: = %"


Last edited by bat-zw on 2008-8-1 at 01:36 PM ]

作者: s11ss     时间: 2008-8-1 15:44

@findstr/c:" %s%o" "%~f0"&pause>nul&exit/b
o
o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o o o o o o o o o o o o o o o o o o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o o
o o
o

作者: yishanju     时间: 2008-8-1 18:57
楼上真创意