Sería más fácil, y fácil de entender a la primera, modificando num después de cada paso.
Código (c) [Seleccionar]
// ...
c100 = num / 100;
num -= c100 * 100;
c50 = num / 50;
num -= c50 * 50;
// ...