# (C programming Example for Beginners)

# C Program to Find the Sum of Natural Numbers using Recursion

#### In this example, you will learn to find the sum of natural numbers using a recursive function.

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.

## 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.

## C Example for Beginners: C Program to Find the Sum of Natural Numbers using Recursion

Disclaimer: The information and code presented within this recipe/tutorial is only for educational and coaching purposes for beginners and developers. Anyone can practice and apply the recipe/tutorial presented here, but the reader is taking full responsibility for his/her actions. The author (content curator) of this recipe (code / program) has made every effort to ensure the accuracy of the information was correct at time of publication. The author (content curator) does not assume and hereby disclaims any liability to any party for any loss, damage, or disruption caused by errors or omissions, whether such errors or omissions result from accident, negligence, or any other cause.The information presented here could also be found in public knowledge domains.