家庭作业:我正在设计一个刽子手游戏。
我有一个数组(名为wordToGuess[]
),表示需要猜测的单词。我将它与那个词的蒙面副本进行比较,(命名displayString[]
- 我知道为了清楚起见我仍然要重命名)。wordToGuess[]
例如,如果是[S][T][A][C][K]
,displayString[]
则初始化为[*][*][*][*][*]
。当用户猜测一个字母时,我想遍历数组的每个字符,*
如果匹配,则用字母猜测替换。例如,如果我猜A
(这是变量letterGuess
)A
与数组的每个元素进行比较。如果匹配,则该元素更改为[A]
。如果不匹配,则元素保留[*]
. 在这种特殊情况下,最终结果应该是一个填充有[*][*][A][*][*]
.
public char[] drawProgress(char letterGuess, char[] wordToGuess, char[] displayString)
{
for (int a = 0; a < wordToGuess.Length; a++)
{
if (wordToGuess[a] == letterGuess)
{
displayString[a] = letterGuess;
}
return displayString;
}
}
编辑:
这是我的问题:循环的开头for
被标记为unreachable code
,我收到一条错误消息,即Error 4 'assn5.PromptForLetter.drawProgress(char, char[], char[])': not all code paths return a value
.
我最初认为这是一个范围问题,但评论者另有解释......
所以......如果我的回报在范围内,是什么导致了错误?我错过了什么?