# C program to Calculate the Power of a Number Using Recursion

To understand this example, you should have the knowledge of following C programming topics:

This program takes two integers from user ( base number and a exponent) and calculates the power. Instead of using loops to calculate power, this program uses recursion to calculate the power of a number.

## Source code to calculate power using recursion

``````
/* Source Code to calculate power using recursive function */

#include <stdio.h>
int power(int n1,int n2);
int main()
{
int base, exp;
printf("Enter base number: ");
scanf("%d",&base);
printf("Enter power number(positive integer): ");
scanf("%d",&exp);
printf("%d^%d = %d", base, exp, power(base, exp));
return 0;
}
int power(int base,int exp)
{
if ( exp!=1 )
return (base*power(base,exp-1));
}
``````

Output

```Enter base number: 3
Enter power number(positive integer): 3
3^3 = 27```

This program can only calculate the power if base power and exponent are integers only. If you need to the calculate power of a floating point number then, you can use pow() library function.