10進数の1から10を,2進数に変換するプログラムを作っています。
Num2 = 0,i = 1に初期化しています.

for (Num10 = 1; Num10 <= 10; Num10++)
   {
      while (Num10)
      {
         if (Num10 % 2 == 1)
            Num2 += i;
         i *= 10;
         Num10 /= 2;
      }
      printf("%05d", Num2);
   }

これで実行すると,意味不明な(-954437117)という数字が無限ループしてしまいます.
指摘してくださる方いましたらよろしくお願いします.