m0_62138486 2022-05-19 21:55 采纳率: 98.6%
浏览 25
已结题

递归条件中printf("%d\n", n%10);的作用是什么?它在那条语句后执行?

img

img


#include <stdio.h>

void printdigits( int n );

int main()
{
int n;

scanf("%d", &n);
printdigits(n);

return 0;

}

/* 你的代码将被嵌在这里 */
void printdigits( int n ){
if(n<10){ //基线条件
printf("%d\n", n);
}else{ //递归条件
printdigits(n/10);
printf("%d\n", n%10);
}
}

  • 写回答

1条回答 默认 最新

  • 逍遥xiaoy 2022-05-19 22:13
    关注

    在个位数之前都是先进入递归,也就是调用函数自身之后再输出,对10取余的意思是输出当前的最低位

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 5月28日
  • 已采纳回答 5月20日
  • 创建了问题 5月19日