我是C新手,在C語言中找到1個論壇來結束一個while循環,並且那個人沒有真正的幫助,因爲它仍然不起作用。它給了我一個「期待;休息之前」或「int keep_playing = 4」來結束循環。這是一個簡單的搖滾紙剪刀遊戲,我只是在循環上工作,很快就會擔心邏輯部分。這是我的代碼。用C語言編程,結束一個while循環
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int main()
{
printf("Welcome to rock paper scissors!\n");
int keep_playing=5;
while (keep_playing==5)
printf("Press 'y' to play or 'n' to quit: ");
char playornot;
scanf("%c\n",&playornot);
if (playornot=='y')
printf("Ok.\n");
else (playornot=='y')
int keep_playing=4;
return 0;
}
你缺乏大括號使閱讀真的很痛苦。雖然沒有大括號的循環只考慮循環聲明後的第一個語句,除非你使用逗號(請不要使用常規)。由於縮進是誤導性的,因此很難說出你的意圖是什麼。按照規定,你的程序應該用「printf(」按'y'播放或'n'退出:「);」;因爲這是循環看到的唯一聲明。 – Dmitry
可能重複[我如何根據用戶輸入退出一段時間(1)](http://stackoverflow.com/questions/38913603/how-can-i-exit-a-while1-based-on-一個用戶輸入) – xenteros
你可以使用「break」來結束一個while循環而不是改變一個變量的值 –