Online Compiler C

#include <stdio.h> int main(){ int a; int b=0; scanf("%d",&a); while(a!=0){ b=b*10+a%10; } printf("%d",b); return 0; }
1) Этот код пытается перевернуть число (например, из 123 сделать 321), но содержит ошибку, из-за которой цикл может стать бесконечным.  

2) Подсказки:  
- Подумай, как изменяется переменная `a` внутри цикла. Должно ли оно меняться?  
- Убедись, что цикл `while` имеет условие для завершения.