CODE: [Copy to clipboard]
@echo off&setlocal enabledelayedexpansion
set p=0&set #1=a&set #2=b&set #3=c
:lp
for /l %%i in (1 1 20) do set .!random!!random!!random!=%%i
for /f "tokens=1,2 delims==" %%i in ('set .') do set s=%%j !s!&set %%i=
for %%a in (%s%) do (
for /f "usebackq tokens=1-6 delims=. " %%i in ("shiti.txt") do (
if defined str (
for %%h in (%%i%%j %%k%%l %%m%%n) do (
set str1=%%h
if /i "!str1:~-2!"=="-y" (set !str1:~,1!=!str1:~1,-2!&set !str1:~1,-2!=-y) else set !str1:~,1!=!str1:~1!
)
call :next
)
if "%%a"=="%%i" set str=%%j
))
echo.&echo.你的得分 %p%
pause&exit
:next
echo !str!
for %%i in (a b c) do set .!random!!random!!random!=%%i
for /f "tokens=1,2 delims==" %%i in ('set .') do set var=%%j !var!&set %%i=
for %%i in (%var%) do call:lp1 %%i
set y=&set var=&set n=
:lp0
set num=&echo.!var1!
set/p num=输入序号(a b c):
if "%num%"=="" goto lp0
if defined !#%num%! (set !#%num%!=&set /a p+=1) else (
echo 答案错误 是否重新做一次?
set/p y=输入 y 重新做一次:
if /i "!y!"=="y" echo !str!&goto lp0
)
set str=&set var1=
goto :eof
:lp1
set/a n+=1
set #!#%n%!=!%1!
set var1=!var1! !#%n%!.!%1!
goto :eof
[CODE: [Copy to clipboard]
@echo Off & setlocal EnableDelayedExpansion
set /a Count=0, Score=0
For /l %%a in (1 1 3) do set "$!Random!!random!=%%a"
For /f "tokens=2 Delims==" %%a in ('set $') do Echo\& Call :Begin %%a
Echo\& Echo Score: %Score%, %Count% Questions.
Pause>nul & Exit /b
:Begin
Set/a n=0,m=0,y=0,Flag=0
For /F "Delims=" %%a in (shiti.txt) do (
set/a n += 1, m=n%%2
If !m! equ 1 (set "Ques=%%a" & set "Str=") Else (set /a c=0 & Call :Loop %%a)
)
For /F "tokens=1* delims==_" %%i in ('set _') do (
set /a y +=1
If !y! Equ %1 (
Set "Question=%%i!" & Echo !Question:*.=!
For %%d in (%%j) do (
set "element=%%d"
If /i "!Element:~-2!" equ "-Y" set "element=!element:~,-2!"
set /p=!element! <nul
)
Echo\& set /p Answer=Input your answer:
For %%d In (%%j) Do (set "Corr=%%d"
If /I "!Corr:~-2!" equ "-Y" (
set "Correct=%%d"
If /I "!Correct:~,1!" equ "!Answer!" (Set /a Count+=1, Score+=5, Flag=1 & Echo Correct...)
))
If "!Flag!" equ "0" Echo !Correct:~,-2!
))
:Loop
For %%I In (%*) Do set "Correct=%%I" & set "#!Random!!Random!=%%I"
For /f "Tokens=1* Delims=#=" %%d In ('set #') do (set "var=%%e" & set "Str=!Str!!var:~2![这里是TAB键]" & set "#%%d=")
For /f "Tokens=1-3 Delims=[这里是TAB键]" %%a in ("!Str!") Do set "_!Ques!=a:%%a[这里是TAB键]b:%%b[这里是TAB键]c:%%c"
Exit /b
[