Estaría bueno que estén mejor explicadas las limitaciones.
Y también los casos para los cuales tendría que funcionar, a menos de que simplemente tenga que funcionar para ese numero.
El que ha planteado esta cuestión le cuesta un poco expresarse en castellano, aun asi está muy bien explicado:
Dado el número: int i = 389438
-Tienes que imprimir dicha cifra invertida (en este caso 834983)
-No se pueden usar arrays
-No se puede convertir este número a cadena
-No se pueden usar variables auxiliares
-Solo se puede utilizar el bucle "for" una vez
Es muy sencillo, quizá asi lo veas más claro aunque ya lo ha resuelto raul338.
No entendí lo de "parada", pero en vb no se puede llamar a un for sin una variable, para eso usar While/Do
En C++ si se puede, es lo que has hecho en tu ejemplo, la única variable que has usado es la del propio número.
Saludos.