0

フラグを使用してwhileループをテストする簡単なプログラムに取り組んでいます。

ただし、何らかの理由でプログラムがwhileループに入らない理由はわかりません。単純なエラーが発生した場合は、ご容赦ください。

主要

int main()
{
  int xflag=0;
  int n=0;

while ( xflag==1 )
{
    if (n == 10)
    {

        cout<<"exiting loop"<<endl;
        xflag = 1;
    }

    else
    {
        cout << n << endl;
        ++n;
        xflag = 0;
    }

}

cout<<"hey"<<endl;

return 0;
} 

出力

   hey
4

2 に答える 2

1

右。whileループの本体は、の場合に実行されますxflag == 1。しかし、そうではありません。

ループを終了するように設定しているのでx = 1、必要なのはおそらく条件xflag == 1xflag == 0(またはsimpy !xflag)に変更することです。

于 2012-05-22T08:56:33.333 に答える
0

の値はxflagです0。したがって、状態xflag == 1は戻ってfalseいます。これが、コントロールが while ループに入らない理由です。

于 2012-05-22T09:00:18.143 に答える