例1 求出每一位并输出
int print(int x)
{
if (x > 9)
{
print(x / 10);
}
printf("%d\n",x%10);
}
例2 求出整数的每一位以字符形式输出
#include <stdio.h>
void convert(int n)
{
if((n/10)!=0)
convert(n/10);
putchar(n%10+'0');
putchar(' ');
}
int main()
{
int num;
printf("输入一个整数:");
scanf("%d",&num);
printf("字符串:");
if(num<0)
{
putchar('-');
num=-num;
}
convert(num);
return 0;
}
例3 通过递归求一个数中某个数在每一位出现了几次(此处以6为例)
int countsix(int x)
{
int t=0;
if (x > 9)
{
t+=countsix(x/10);
}
if(x%10==6) return 1+t;
else return 0+t;
}
例4 求一个整数的所有位数字和
int sum(int x)
{
int ret=0;
if (x > 9)
{
ret+=sum(x / 10);
}
return ret+x%10;
}