我怎樣才能建立一個循環,每次循環都可以接受用戶輸入?循環可以每次通過用戶輸入通過
#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的值,並一遍又一遍地使用它。如果它是錯誤的詞,它將會有一個無限循環。
這個程序有不止一些錯誤:例如,它實際上並沒有將輸入與實際的字進行比較。由於這不涉及這個問題,這不是我的直接關注。
你能解釋一下發生了什麼嗎? – 2010-11-22 06:32:12
您的代碼不能按原樣編譯(缺少分號,無效的語句),也請使用正確的縮進,並且不要將右花括號放在另一個語句的旁邊。讓你的代碼更難閱讀。 :) – birryree 2010-11-22 06:32:33
它需要原始輸入,並在循環中再次使用它,如果它是錯誤的,本質上會造成無限循環 – 2010-11-22 06:33:42