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
相关推荐
瑞行AI几秒前
一套数据格式框架搞定大模型微调和对齐训练
算法·语言模型
玛卡巴卡ldf几秒前
【LeetCode 手撕算法】(动态规划)爬楼梯、杨辉三角、打家劫舍、完全平方数、零钱兑换、单词拆分、最长递增子序列、乘积最大子数组、分割等和子集
java·数据结构·算法·leetcode·动态规划·力扣
小短腿的代码世界2 分钟前
Qt实时风控计算引擎:从订单校验到盈亏监控的完整架构设计与高性能实现
开发语言·qt
jake·tang2 分钟前
深度解析 VESC 参数辨识源码:电阻、电感与磁链
arm开发·c++·嵌入式硬件·算法·数学建模·傅立叶分析
MaikieMaiky4 分钟前
C++STL 系列(三):deque 容器详解与示例
开发语言·c++
图码8 分钟前
矩阵边界遍历:顺时针与图案打印的两种高效解法
数据结构·python·线性代数·算法·青少年编程·矩阵·深度优先遍历
南境十里·墨染春水8 分钟前
线程池学习(三) 实现固定线程池
开发语言·c++·学习
sali-tec8 分钟前
C# 基于OpenCv的视觉工作流-章72-点-点距离
图像处理·人工智能·opencv·算法·计算机视觉
橘子海全栈攻城狮8 分钟前
【最新源码】基于springboot的快递物流平台的设计与实现C102
java·开发语言·spring boot·后端·spring·web安全
之歆9 分钟前
DAY_24JavaScript 面向对象深度全解:Object、构造函数与 this 系统指南(上)
开发语言·前端·javascript·原型模式