#include<stdio.h>
int a;
void fun(int a)
{
int m;
if(a==0)
return;
m=a%2;
//printf("%d",m);把printf放这,是算完一个就输出数值,然后再递归
a=a/2;
fun(a);
printf("%d",m);//先递归,把数值一个一个存起来,然后再从顶部释放
}
int main()
{
scanf("%d",&a);
fun(a);
printf("\n");
}
第一个是结果是printf放在递归函数前,第二个结果是printf放在递归函数后