#include <iostream>
using namespace std;

int main()
{
    int m[5] = { -1, 1, -1, 0, -1 };

       for (int i = 0; m[i] != 0; ++i)
       {

          switch (i)
          {
           case 0:
           case 1:
           case 2: m[i] *= 3;
           case 3:
             if (i % 3 == 0)
             {
              m[i] = 1;
             }
             break;
          case 4:
             m[i] = 2;
             break;
          default:
            cout << "lalala" << endl;
          }
          if (i == 4)
          {
            m[i] = 0;
          }
       }

    for (int i = 0; i < 5; i++)
    {
        cout << m[i] << " ";
    }

}


i가 0일 때 m 배열에 아무 변화 없고

i가 1일 때도 아무 변화 없고

i=2가 되면, m[2]*=3  즉   {-1,1,-3,0,-1}이 되고

i가 3이 되면, m[i]!=0 조건에 안 맞아서 두 번쨰 for문으로 가죠.


그래서 {-1,1,-3,0,-1}이 나와야되는데, 왜 막상 돌려보면

{-1,3,-3,0,-1}이 나올까요?