C语言代码 计算一个数的每位之和(递归实现)

计算一个数的每位之和(递归实现)

写一个递归函数DigitSum(n),输入一个非负整数,返回组成他的数字之和

例如:调用DigitSum(1024),则应该返回1+0+2+4,它的和是7。

输入:1024,输出:7


代码示例:

cpp 复制代码
#include <stdio.h>

int DigitSum(int n)
{
	if (n > 9)
	{
		return DigitSum(n / 10) + n % 10;
	}
	else
	{
		return n;
	}
}
int main()
{
	int num = 0;
	scanf("%d", &num);
	int sum = DigitSum(num);
	printf("%d", sum);
	return 0;
}

运行结果:

复制代码
1024
7
相关推荐
Pyeako11 分钟前
机器学习之KNN算法
人工智能·算法·机器学习
xhxxx16 分钟前
从被追问到被点赞:我靠“哨兵+快慢指针”展示了面试官真正想看的代码思维
javascript·算法·面试
报错小能手19 分钟前
STL_unordered_map
开发语言·c++·哈希算法
可信计算19 分钟前
【算法随想】一种基于“视觉表征图”拓扑变化的NLP序列预测新范式
人工智能·笔记·python·算法·自然语言处理
月明长歌26 分钟前
【码道初阶】【LeetCode 110】平衡二叉树:如何用一个“Magic Number”将复杂度从O(N²)降为 O(N)?
linux·算法·leetcode
yaoh.wang29 分钟前
力扣(LeetCode) 14: 最长公共前缀 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·跳槽
CreasyChan34 分钟前
C#特性(Attributes)详解
开发语言·c#
历程里程碑36 分钟前
C++ 9 stack_queue:数据结构的核心奥秘
java·开发语言·数据结构·c++·windows·笔记·算法
csbysj202044 分钟前
JavaScript AI 编程助手
开发语言
t198751281 小时前
基于MATLAB的线性判别分析(LDA)降维算法实现方案
开发语言·算法·matlab