# Sum Of Digit Of A Number Using Recursion Through C Programming

In this post I will discuss Sum Of Digit Of A Number Using Recursion through C Programming.

Given a number, we need to find sum of its digits using recursion.

Examples:

``````Input : 12345
Output : 15

Input : 45632
Output :20``````

Now, the step by step process for a better understanding of how this algorithm works,

Lets, Take the example 12345

Step-1:

``12345 % 10 which is equal-too 5 + and then send 12345/10 to next step.``

Step-2:

``1234 % 10 which is equal-too 4 + and then send 1234/10 to next step.``

Step-3:

``123 % 10 which is equal-too 3 + and then send 123/10 to next step.``

Step-4:

``12 % 10 which is equal-too 2 + and then send 12/10 to next step.``

Step-5:

`` 1 % 10 which is equal-too 1 and then send 1/10 to next step.``

Step-6:

`` 0 algorithm stops.``

Here, following diagram will illustrate the process of recursion:

```// Recursive C program to find sum of digits
// of a number
#include <stdio.h>

int sum_of_digit(int);
// Driven Program to check above
int main()
{
int num = 12345;
int result = sum_of_digit(num);
printf("Sum of digits in %d is %d\n", num, result);
return 0;
}

// Function to check sum of digit using recursion
int sum_of_digit(int n)
{
if (n == 0)
return 0;
return (n % 10 + sum_of_digit(n / 10));
}```

Output:

``Sum of digits in 12345 is 15``