Как сделать цикл, который может принимать пользовательский ввод каждый раз, когда он повторяется?
#include <stdio.h>
#define WORD "jumble"
#define JUMBLED "mleujb"
int main()
{
char string[6];
int i = 0;
printf("The jumbled word is ");
printf(JUMBLED);
printf("\nCan you guess the original: ");
while(i == 0)
{
scanf("%d", string);
if (string == "exit")
{
return;
}
if(string == WORD)
{
i++;
printf("Kudos! You've guessed the word!");
}
else
{
printf("English please, good sir. Guess again.\n");
}
}
}
Я надеялся, что каждый раз, когда программа проходит цикл, она будет хотеть новый ввод с функцией scanf. Однако это, очевидно, не работает таким образом. Вместо этого программа берет значение первого scanf и использует его снова и снова. Если это неправильное слово, оно будет иметь бесконечный цикл.
Эта программа содержит более нескольких ошибок: например, она еще не сравнивает ввод с фактическим словом. Поскольку это не относится к вопросу, это не является моей непосредственной заботой.