-3

do while ステートメントが case0 の switch 条件内にあるコード スニペットがあります。デフォルトでは、case 値は case1 ですが、case0 を実行しているようです。プログラムprintの出力は6です。これはどのように可能ですか、誰かがここでコードの流れを説明できますか。ご回答ありがとうございます。

int main()
{
    int a = 1, t =0,n=2;
    switch(a)
    {
        case 0:
        do
        {
        t++;
        case 4:t++;
        case 3:t++;
        case 2:t++;
        case 1:t++;
        }while(--n>0);
        printf("%d",t);
        
    }
    return(0);
    
}

4

3 に答える 3