爲了讓您指出正確的方向,您需要在這裏使用while
循環。這不是本質上的區別有一個布爾表達式聲稱的東西的不的情況以外有一個聲稱這是真的。 1 != 2
,例如,是完全正確的(因爲1實際上不等於2)。這聽起來有點奇怪,但想想爲什麼這個陳述是真實的,我想這會澄清問題。
一個快速點。我知道,這是在評論中提到,但在這種情況下else if (a == 625)
是多餘的,因爲a
不可能是什麼但 625在這裏。另外,我認爲你扭轉你的if
語句,因爲這樣你寫了這個從字面上任意數量的其他比625是正確的密碼(你可以if
報表仔細觀察,看看爲什麼是這樣的情況)。
雖這麼說,這裏有一個例子,可以幫助你:
int a = // Read integer from console;
// This will happen if, and only if, a is something other than 625
// This'll keep prompting them until they enter 625
while (a != 625) {
printf("Incorrect password. Please enter the correct password.");
a = // Read integer from console
}
// If we got past the loop, we know that they must have entered a correct password
printf("Correct password");
希望這有助於。
開始。您是否嘗試在此處搜索用於用戶輸入的* c循環*? –
'if(a == 625)'是多餘的,因爲當涉及到該子句時,它必須等於625,這就是「其他」的含義。並且不要使用括號作爲回報,它不是函數 –
嗨,歡迎來到Stack Overflow。對不起,但這個問題可能會因爲太小而關閉。你應該看看[while循環](https://www.tutorialspoint.com/cprogramming/c_while_loop.htm)和一本學習C的好書,例如[Learn C The Hard Way](https://learncodethehardway.org/c /)。老實說,如果你只是在學習如何編程,C可能不是一個好的選擇。這很複雜,最好先用高級語言學習基礎知識,比如[Ruby](http://tryruby.org/levels/1/challenges/0)。 – Schwern