#include <stdio.h>
void fun(int n)
{
if(n/10!=0)
fun(n/10);
fun(n/10);
printf("%c" ,n%10+'0');
}
int main()
{
int n=256;
if(n<0) printf("-"); n=-1*n;fun(n);
}
fun(n);
retumn 0;
}
你这代码根本就不对啊,哪有那么多fun(n)和fun(n/10)啊
这就是个递归,比如256,先不输出,判断256/10=25不为0,则执行fun(25),同理,再先执行fun(2),发现2/10为0,就不再递归,输出字符'2';回退到上一层递归,输出字符'5',最后回退到第一层递归,输出字符'6'