The positive numbers 1, 2, 3... are known as natural numbers. The program below takes a positive integer from the user and calculates the sum up to the given number.

Visit this page to find the sum of natural numbers using a loop.

## Sum of Natural Numbers Using Recursion

```
#include <stdio.h>
int addNumbers(int n);
int main() {
int num;
printf("Enter a positive integer: ");
scanf("%d", &num);
printf("Sum = %d", addNumbers(num));
return 0;
}
int addNumbers(int n) {
if (n != 0)
return n + addNumbers(n - 1);
else
return n;
}
```

**Output**

Enter a positive integer: 20 Sum = 210

Suppose the user entered 20.

Initially, `addNumbers()`

is called from `main()`

with
20 passed as an argument.

The number 20 is added to the result of `addNumbers(19)`

.

In the next function call from `addNumbers()`

to
`addNumbers()`

, 19 is passed which is added to the result of
`addNumbers(18)`

. This process continues until `n` is
equal to 0.

When `n` is equal to 0, there is no recursive call. This returns the
sum of integers ultimately to the `main()`

function.