全网最易懂的解题——C语言“返回每位数之和(递归)”

现在我们大概要做这样一件事情,怎么做呢,熟悉的办法模10除10嘛

 之前做过了那么多递归的题目,现在写代码有点顺手了吧,还是先搭建框架然后再去写函数

int calculate(int num)
{
	int sum = 0;
	if (num < 10 && num >= 0)
	{
		return num;
	}
	else if (num >= 10)
	{
		sum = num % 10 + calculate(num / 10);
	}
	return sum;
		
}
//返回每位数之和(递归)
int main()
{
	int num = 0;
	printf("请输入一个数:");
	scanf("%d", &num);

	int value = calculate(num);
	printf("%d", value);

	return 0;
}

有小伙伴说,代码总能写出来,但理解总是很混乱,那今天Mr.狠人就再手把手的捋一下递归是如何在程序中运行的

慢慢的跟着绿线和黄线走一遍,思路有没有清晰一点

如果还有疑问评论区看见秒回哦,持续更新ing,有帮助请给个赞,谢谢! 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值