int main(){
void aaa(int);
int n;
scanf("%d",&n);
aaa(n);
}
void aaa(int n){
int m;
m=n%10;
n=n/10;
if(n) aaa(n);
printf("%c",m+48);
}
此函数为不带返回值的递归函数
原样输出:用n/10判断是否为0,以此条件决定是否进行递归调用,n不为0说明还没到最后一位,进行递归调用n再次除以10,直到n等于0不再进行递归调用,打印余数m(1)并返回上一级递归调用再次打印余数m(2),直到退出函数;
倒序输出:先打印余数m(4)然后判断n/10是否为0,若不为0则继续调用递归函数,直到n等于0将全部数字打印完毕,这个递归函数没有返回上一级的步骤;
递归函数必须要有终止条件
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)