
CODE: [Copy to clipboard][ Last edited by zw19750516 on 2008-5-21 at 08:19 PM ]@echo off&setlocal enabledelayedexpansion
set str=13 z 113 -3 778 10004 f k a 119 -101 8 -19 m
echo 排序前:%str%
for %%i in (%str%) do call,set var=!var! #%%i#
for %%i in (%var%) do set a=%%i&call :lp
echo 排序后:%var:#=%
pause>nul&goto :eof
:lp
for %%i in (%var%) do (
set b=%%i&set b=!b:#=!&set c=!a:#=!
if !b! lss !c! (
set var=!var:%a% =!
set var=!var:%%i=%%i %a%!
) else (
set var=!var!
)
)
| Quote: | |
|
CODE: [Copy to clipboard]@echo off
setlocal enabledelayedexpansion
set i=1
set text="13 z 113 -3 778 10004 f k a 119 -101 8 -19 m"
:loop
for /f "tokens=1,* delims= " %%i in (%text%) do (
set a%i%=%%i
set text="%%j"
set /a i+=1
)
if !text! neq "" goto loop
set /a i-=1
for /l %%a in (1,1,%i%) do (
for /l %%b in (1,1,%i%) do (
if !a%%a! lss !a%%b! (
set tm=!a%%a!
set a%%a=!a%%b!
set a%%b=!tm!
)
)
)
for /l %%c in (1,1,%i%) do set /p=!a%%c! <nul
echo.
pause
CODE: [Copy to clipboard]很繁琐,只能做到如此程度了,完全是抄袭的~ - -||@echo off&setlocal enabledelayedexpansion
set "str=13 z 113 -3 778 10004 f k a 119 -101 8 -19 m"
for %%a in (%str%) do (
if %%a lss a (
set "var=!var!%%a "
set str=!str: %%a=!
)
)
for %%a in (%var%) do (
set str1=0000000000%%a
set .!str1:~-10!=a
)
for /f "delims=.=" %%i in ('set .') do (
for /f "tokens=* delims=0" %%a in ("%%i") do set/p= %%a<nul&set %%a=A
)
for %%a in (%str%) do (
if not defined %%a (
set str2=0000000000%%a
set #!str2:~-10!=a
)
)
for /f "delims==#" %%i in ('set #') do (
for /f "tokens=* delims=0" %%a in ("%%i") do set/p= %%a<nul
)
| Quote: | |
|
| 欢迎光临 中国DOS联盟论坛 (http://cndos.fam.cx/forum/) | Powered by Discuz! 2.5 |