- /c语言经典例题第29题/
int f(int number)
{
if(number > 0) /*退出递归的条件*/
{
printf("%d ",number%10); /*输出个位上的数*/
/*每次递归将 number 去掉个位上的数*/
return 1+f(number/10); /* 1+ 的用处是用来记录进行了几次递归 */
}
}
int main(void)
{
int n=0;
int number=0;
scanf("%d",&n); /*输入的数字最好不要大于int类型能承受的范围*/
number=f(n); //调用递归函数
printf("\n是%d位数\n",number);
return 0;
}
有错误欢迎指出,共同进步。