开始这个递归函数是怎么运算的,求解释,putchar(n%10+'0')这语句话怎么执行的,假如我

2023-05-07 综合 19阅读
n%10+'0',是输腔孝出整型数字对应的字符数字,这是根据ACSII码得来的。比如3+'0'就能得到字符'3'。
在递归里面,n不断的除以10,用于得到移除最低位后的值。而n%10是用来得到当前最低位的值。
比如258/10=25,258%10=8.
258/10=25,不等于0.继续递归
25/10=2,2不为0,继续递归
2/10=0,为0,不继续递归,也就是跳过if后covert函数。然后当前层的函数继续执行,putchar() 2%10+'伍迟稿0'旦碧得到字符‘2’。当前层的函数执行完了,返回上一层。
上一层n的值为25.执行putchar,输出字符'5'。然后回到上一层
上一层n的值为258,执行putchar,输出字符‘8’
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com