我正在为我的脚本类工作这个.BAT项目,当我输入诸如摇滚或纸张的答案时,我仍然坚持这个问题。我甚至在这个问题上问过我的教授,但他正在努力寻找解决方案。如果可能的话,我想首先找到解决方案。
我还创建了一个github链接,以便您可以看到整个脚本 https://github.com/CyborgVillager/Rock-Paper-Scissors/issues/1
这个项目名称叫做rps.bat,我不知道是否会响铃,以防万一你们之前有人这样做过哈哈。无论如何我都试图找到解决方案,同时你的帮助将不胜感激!
REM Ask the player to make their choice
SET /p answer= Type either rock, paper, or scissors:
GOTO :EOF
REM This procedure randomly determines the computer's choice
:GetComputerChoice
REM Get a random Number
答案 0 :(得分:0)
2件事......最后......将GOTO :EOF
改为GOTO :MyEnding
没有任何影响,所以我将其排除......
我发现您的代码有两个问题。
一个......你宣称:Contunue
为标签,但你正在做GOTO :Continue
。由于:Contunue
!= :Continue
,这是一个问题。
然后就是这个......
代码的这一部分位于CompareChoices
标签中,缺少)
IF /I %answer% == rock (
IF %CardImage% == rock (
SET results="You Tie"
SET /a NoTies = NoTies +1
)
看看你如何将其他if
陈述包裹在那个以下...我猜猜遗失的)
就在这里
从此
IF /I %answer% == rock (
IF %CardImage% == rock (
SET results="You Tie"
SET /a NoTies = NoTies +1
)
IF %CardImage% == scissors (
SET results ="You Win"
SET /a NOWins = NoWins +1
)
IF %CardImage% == paper (
SET results ="You Lose"
SET /a NOLosses = NoLosses +1
)
对此。在最后一行添加了)
。
IF /I %answer% == rock (
IF %CardImage% == rock (
SET results="You Tie"
SET /a NoTies = NoTies +1
)
IF %CardImage% == scissors (
SET results ="You Win"
SET /a NOWins = NoWins +1
)
IF %CardImage% == paper (
SET results ="You Lose"
SET /a NOLosses = NoLosses +1
))
毕竟...游戏结果是错误的,但至少程序正在运行。由您决定结果;)或者问一个新问题吗?
修复标签名称可修复此错误The system cannot find the batch label specified - Continue
,同时修复丢失的)
修复了The syntax of the command is incorrect
。
建议提示......如果您正在积极处理bat文件并对其进行故障排除...请勿双击该文件。而是,运行CMD,然后从其中运行您的bat文件。不同之处在于,当从现有CMD实例运行时,而不是双击,CMD提示将在程序运行完毕后保留在屏幕上。因此,允许您查看如果要向上滚动的内容。
双击Bat文件时,一旦程序运行完毕,CMD提示就会消失(除非脚本结束时有暂停或超时)。
答案 1 :(得分:0)
GOTO :EOF
是一个特殊命令。它将转到文件的末尾,以便您的代码正常工作"正确"。