嗨我正在C语言中为我的编程课程编写一个刽子手程序,我遇到了问题。以下是我遇到问题的代码:
char UserGuess;
int i, x;
int WrongGuesses;
for(i = 0; i < MAX_TRIES; i++ )
printf("Go ahead and guess a letter\n");
UserGuess = getchar();
for (x = 0; x < len; x++)
if (randomWordfomFile[x] = UserGuess)
UserGuess = randomWordfromFile[x];
else if
break;
printf("%s", randomWordfromFile[]);
MAX_TRIES是一个宏,randomWordfromFile是我从另一个函数得到的数组。 (如果需要,我可以发布该功能的代码。
我的问题是我无法跟踪用户错误和离开的猜测次数。此外,如果我想添加更多功能,循环内部的循环使我更难以看到。是否有更简单的方法,或者这是最好的方法吗?
答案 0 :(得分:3)
分配=
运算符和==
运算符之间存在差异
改变
if (randomWordfomFile[x] = UserGuess)
到
if (randomWordfomFile[x] == UserGuess)
旁注:
getchar
返回int
类型。将UserGuess
声明为int
int UserGuess;
并更改
printf("%s", randomWordfromFile[]);
到
printf("%s", randomWordfromFile);
答案 1 :(得分:2)
这是分配..
if (randomWordfomFile[x] == UserGuess)
此外,您不需要[]
printf()
printf("%s", randomWordfromFile);