# C program to sum the digits of a number in single statement

• Write a program in C to find sum of digits of a number in single statement.
• How to find the sum of digits of a number in one statement using recursion.

Algorithm to find sum of digits of a number
• Get least significant digit of number (number%10) and add it to the sum variable.
• Remove least significant digit form number (number = number/10).
• Repeat above two steps, till number is not equal to zero.

## C program to find sum of digits of a number using for loop

```# include<stdio.h>

int main() {
int n, sum;

printf("Enter a number\n");
scanf("%d", &n);

for(sum=0; n > 0; sum += n%10, n/=10);

printf("Sum of digits : %d", sum);

return 0;
}
```
Output
```Enter a number
1234
Sum of digits : 10
```

## C program to find sum of digits of a number using recursion

```#include<stdio.h>

int sumOfDigits(int n) {
return n == 0 ? 0 : n%10 + sumOfDigits(n/10) ;
}

int main() {
int n, sum;

printf("Enter a number\n");
scanf("%d", &n);
printf("Sum of Digits : %d", sumOfDigits(n));

return 0;
}
```
Output
```Enter a number
12345
Sum of Digits : 15
```