C Program to find Reverse of a Number using Recursion

0

Code

#include <stdio.h>
 
#include <math.h>
 
int rev(int, int);
 
int main()
 
{
 
    int num, result;
 
    int length = 0, temp;
 
    printf("Enter an integer number to reverse: ");
 
    scanf("%d", &num);
 
    temp = num;
 
    while (temp != 0)
 
    {
 
        length++;
 
        temp = temp / 10;
 
    }
 
    result = rev(num, length);
 
    printf("The reverse of %d is %d.\n", num, result);
 
    return 0;
 
}
 
int rev(int num, int len)
 
{
    if (len == 1)
 
    {
 
        return num;
 
    }
 
    else
 
    {
 
        return (((num % 10) * pow(10, len - 1)) + rev(num / 10, --len));
 
    }
 
}

Output

Enter an integer number to reverse: 5678
The reverse of 1234 is 8765

Leave a Reply

Your email address will not be published. Required fields are marked *