不太习惯用复杂的方法解决简单的问题。
试试如下程序:
void main(void){ int i, x; printf("input x = "); scanf("%d", &x); for (i = 0; i < 16; i++) printf("%d", (x >> (15 - i)) & 1);}