Как вывести значения в обратном порядке?
Для такого надо сначала найти максимальный разряд числа в указанной системе счисления а затем уже выводить в нужном порядке. И привыкайте давать переменным значащие имена, иначе потом сами будете путаться.int value = 13;
int base = 2;
int rank = 1;
while (rank*base <= value)
  rank *= base;
while (rank) {
  printf("%d", value/rank);
  value %= rank;
  rank /= base;
}
Записать значения в вектор, а потом вывести в любом порядке