思维导图:
 
递归实现,输入一个数,输出这个数的每一位:
#include<myhead.h>
//递归函数
void fun(int num){
	//num没值不再递归
	if(0 == num){
		return;
	}
	//输出数的最后一位
	printf("%d\t", num%10);
	//递归
	fun(num/10);
}
int main(int argc, const char *argv[])
{
	int num = 0;
	printf("请输入一个数:");
	scanf("%d", &num);
	fun(num);
	putchar(10);
	return 0;
}
 

 递归实现,输入一个数,输出这个数的二进制:
#include<myhead.h>
//递归函数
void fun(int num){
	if(0 == num){
		printf("0");
		return;
	}
	//递归
	fun(num/2);
	//输出二进制数
	printf("%d", num%2);
}
int main(int argc, const char *argv[])
{
	int num = 0;
	printf("请输入一个数:");
	scanf("%d", &num);
	fun(num);
	putchar(10);
	return 0;
}
 

 shell脚本:
 



















