再帰関数使う例です。最上位から出力できるってのが不思議なところ。
#include <stdio.h>
void dec2bin(unsigned int val)
{
if(val != 0)
{
dec2bin(val/2);
if(val%2)
printf("1");
else
printf("0");
}
}
int main(int argc, char** argv)
{
int val;
printf("Please input integer>");
scanf("%d", &val);
dec2bin( (unsigned int)val);
printf("\n");
}