Professional Documents
Culture Documents
Get (https://www.programiz.com/learn-c?utm_campaign=programiz-
Search tutorials and examples
App(/)homepage&utm_source=programiz-website-c-app-popup)
www.domain-name.com
C Recursion
In this tutorial, you will learn to write recursive functions in C programming with the
help of an example.
Video: C Recursion
A function that calls itself is known as a recursive function. And, this technique is
known as recursion.
Howyou
Thank recursion works?
for printing our content at www.domain-name.com. Please check back soon for new
contents.
void recurse()
{
(https://www.programiz.com/learn-c?utm_campaign=programiz-
Get
Search tutorials and examples
App(/)homepage&utm_source=programiz-website-c-app-popup)
... .. ...
recurse();
www.domain-name.com
... .. ...
int main()
{
... .. ...
recurse();
... .. ...
Working of Recursion
Thank you for printing our content at www.domain-name.com. Please check back soon for new
contents.
Get (https://www.programiz.com/learn-c?utm_campaign=programiz-
Search tutorials and examples
App(/)homepage&utm_source=programiz-website-c-app-popup)
www.domain-name.com
#include <stdio.h>
int main() {
scanf("%d", &number);
result = sum(number);
return 0;
int sum(int n) {
if (n != 0)
return n + sum(n-1);
else
return n;
Output
sum = 6
Thank you for printing our content at www.domain-name.com. Please check back soon for new
contents.
Initially, the sum() is called from the main() function with number passed as an
Get (https://www.programiz.com/learn-c?utm_campaign=programiz-
argument. Search tutorials and examples
App(/)homepage&utm_source=programiz-website-c-app-popup)
When n is equal to 0, the if condition fails and the else part is executed
returning the sum of integers ultimately to the main() function.
Get (https://www.programiz.com/learn-c?utm_campaign=programiz-
AdvantagesSearch
andtutorials and examplesof Recursion
Disadvantages
App(/)homepage&utm_source=programiz-website-c-app-popup)
www.domain-name.com
Recursion makes program elegant. However, if performance is vital, use loops
instead as recursion is usually much slower.
Next Tutorial:
(/c-programming/c-storage-class)
C Storage Class
Previous Tutorial:
(/c-programming/types-user-defined-functions)
C Function Types
Share on:
(https://www.facebook.com/sharer/sharer.php? (https://twitter.com/intent/tweet?
u=https://www.programiz.com/c- text=Check%20this%20amazing%20
programming/c-recursion) programming/c-recursion)
Get (https://www.programiz.com/learn-c?utm_campaign=programiz-
Search tutorials and examples
App(/)homepage&utm_source=programiz-website-c-app-popup)
www.domain-name.com
Related Tutorials
C Tutorial
C Function Examples
(/c-programming/c-functions-examples)
C Tutorial
(/c-programming/c-string-examples)
C Tutorial
(/c-programming/types-user-defined-functions)
C Tutorial
(/c-programming/c-structure-function)