递归实现顺序输出整数:输入一个正整数n,编写递归函数实现对其进行按位顺序输出。试编写相应程序。
#include<stdio.h>
void bite_output(int n);
int main(void)
{
int n;
printf("input n:");
scanf("%d",&n);
bite_output(n);
return 0;
}
void bite_output(int n)
{
if(n<10)
printf("%d\n",n);
else{
bite_output(n/10); //一直到最高位
printf("%d\n",n%10);
}
}
/** 以4321 为例,else{}中的内容自栈底向上按顺序为:4321,432,43;
到达 4 时递归出口if直接输出 4 ,然后每次 %10 输出,
43、432、4321 依次输出各位:3、2、1 **/
#include <stdio.h> int inorder(int n); int main(void) { int n; scanf("%d",&n); printf("%d\n" , inorder (n)); } int inorder (int num) { if(num<10) return num; else return(inorder (num/10)*10+ num%10); }