Usando la recursividad, encuentre un número entero no negativo y devuelva la suma de los números que lo componen. Por ejemplo, entrada 1234, salida 1+2+3+4=10, entrada 1729, salida 19.
Calcula recursivamente factorizando dígitos individuales.
#include<stdio.h>
#include<stdlib.h>
//首先要把该数分解,知道这个数是几位数,再返回每位数的累加和
DigitSum(int n)
{
if (n / 10== 0)
{
return n;
}
else
{
return n%10 + DigitSum(n / 10);
}
}
int main()
{
printf("请输入一个非负整数:");
int n;
scanf("%d",&n);
printf("%d\n",DigitSum(n));
system("pause");
return 0;
}