Fabin, este algoritmo é classico em disciplinas de "prática de programação" ou "introdução a programação", etc... Pra pegar o digito separadamente você pode usar algo como (assumindo 458, como exemplo) : int x = num % 10; // aqui x vai ser o resto da divisão, ou seja, a casa das unidades!!! (x = 8)
Se você continuar fizer então:
num = num / 10; // aqui num é dividido por 10, ou seja, a casa das unidades é descartada (num = 458 -> num = 45)
E em seguida fizer novamente:
x = num % 10; // você terá então a casa das dezenas (x = 5)
Então novamente:
num = num / 10; // descarta a casa das dezenas (num = 45 -> num = 4)
E finalmente:
x = num % 10; // pegando a casa das centenas (x = 4) você já deve ter notado que aqui um simples loop resolve o problema pra quantas casas você precise e se você pensar o pouquinho mais dá até pra fazer este algoritmo de forma recursiva. :) []s