私はC言語に新しいので、whileループを終了するためにCで1つのフォーラムを見つけましたが、それでもまだ動作しません。ループを終了させるために、私は "予期した;前の休憩"または "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;
}
あなたの中かっこが足りないと、読んで本当に痛いです。一方、中括弧を使わないループは、あなたがカンマを使用していない限り、ループ宣言の後の最初の文だけを考慮します(COMMAS THOUGHは使用しないでください)。インデントが誤解を招くので、あなたの意図がそのままであるかどうかは分かりません。あなたのプログラムは、あなたが "printf("再生するには 'y'を、終了するには 'n'を押してください: ");"それはループが見ている間の唯一のステートメントだからです。 – Dmitry
[ユーザー入力に基づいてしばらく(1)を終了するにはどうすればよいですか?](http://stackoverflow.com/questions/38913603/how-can-i-ex1-based-on-ユーザ入力) – xenteros
変数の値を変更する代わりにwhileループを終了するには "break"を使うことができます。 –