Write a function to print all strong numbers between a given interval in C programming. How to print strong numbers in a given range using functions in C programming. Write a C function to find strong numbers between 1 to n.

**Example**

**Input**

Input lower limit: 1 Input upper limit: 100

**Output**

Strong numbers between 1 to 100: 1, 2, 145

## Required knowledge

Basic C programming, Function

Must know -

## Declare function to find all strong numbers in given range

- First give a meaningful name to the function. Say printStrongNumbers() is declared to print all strong numbers in given range. Along with this we must also declare and define function to find factorial of a number, say long long fact(int num);.
- Next we need to print strong numbers in range. Therefore, the function must accept two integer parameters start and end limit of strong numbers.
- Finally the function simply prints strong numbers in range and returns nothing.

After looking on above points function declaration to print strong numbers in range is - void printStrongNumbers(int start, int end);.

## Program to print strong numbers in given interval

```
/**
* C program to print strong numbers in a given interval using functions
*/
#include <stdio.h>
/* Function declaration */
long long fact(int num);
void printStrongNumbers(int start, int end);
int main()
{
int start, end;
/* Input start and end range */
printf("Enter the lower limit to find strong number: ");
scanf("%d", &start);
printf("Enter the upper limit to find strong number: ");
scanf("%d", &end);
printf("All strong numbers between %d to %d are: \n", start, end);
printStrongNumbers(start, end);
return 0;
}
/**
* Print all strong numbers in a given range
*/
void printStrongNumbers(int start, int end)
{
long long sum;
int num;
// Iterates from start to end
while(start != end)
{
sum = 0;
num = start;
// Calculate sum of factorial of digits
while(num != 0)
{
sum += fact(num % 10);
num /= 10;
}
// If sum of factorial of digits equal to current number
if(start == sum)
{
printf("%d, ", start);
}
start++;
}
}
/**
* Recursively find factorial of any number
*/
long long fact(int num)
{
if(num == 0)
return 1;
else
return (num * fact(num-1));
}
```

Output

Enter the lower limit to find strong number: 1 Enter the upper limit to find strong number: 100000 All strong numbers between 1 to 100000 are: 1, 2, 145, 40585,

Happy coding 😉

### Recommended posts

- Function and recursion programming exercise index.
- C program to find prime numbers in given range using function.
- C program to find armstrong numbers in given range using function.
- C program to find perfect numbers in given range using function.
- C program to check even number using function.
- C program to print all natural numbers in given range using recursion.

<pre><code> ----Your Source Code---- </code></pre>