-3

このコードを for ループを停止するのではなく、内側の if ステートメントだけから抜け出させるにはどうすればよいでしょうか?

#include <stdio.h>

int main()
{
    int i,j;

    for(i=0;i<10;i++)
    {
        if((i==2 || i==8 || i==4))
        {
            printf("\ni is %d\n",i);

            if(i==4)
            {
                printf("\ni is %d\n",i);
                break;
            }
            else
            {
                printf("\ni is not 4\n");
            }
        }
        else
        {
            printf("\nnext\n");
        }
        printf("\ngoes out of innner if\n");
    }
    return 0;
}

このループは で発生しi=4ます。で抜け出し、i-4まで for ループを続行する方法はありますi<10か?

4

3 に答える 3

1

かなり混乱すると思いますが、一度だけ実行されるループを使用できます。

do {
    /* ... */
    if(i==4)
    {
        printf("\ni is %d\n",i);
        break;
    }
    /* ... */
} while(0);
于 2013-10-08T06:02:05.630 に答える