Write a program in C to find the reverse of an integer using recursion.

Reverse an Integer Using Recursion in C

In this tutorial, we will write a C program to find the reverse of an integer using recursion.

Problem Statement

Write a C program that reverses an integer using a recursive function.

Concept of Recursion

Recursion is a technique where a function calls itself until a base condition is met. In this program, we will reverse the digits of an integer using recursion.

C Program


#include <stdio.h>

int reverse(int num, int rev) {
    if (num == 0)
        return rev;
    return reverse(num / 10, rev * 10 + (num % 10));
}

int main() {
    int n, result;

    printf("Enter an integer: ");
    scanf("%d", &n);

    result = reverse(n, 0);

    printf("Reversed number: %d\n", result);

    return 0;
}

Explanation

1. Function Definition

The function reverse(int num, int rev) takes two parameters:

  • num → stores the remaining part of the number
  • rev → stores the reversed number

2. Base Condition


if (num == 0)
    return rev;

When the number becomes zero, recursion stops and the reversed number is returned.

3. Recursive Step


return reverse(num / 10, rev * 10 + (num % 10));
  • num % 10 → extracts the last digit
  • rev * 10 + digit → appends the digit to the reversed number
  • num / 10 → removes the last digit
  • The function calls itself until num becomes zero

Sample Input

Enter an integer: 1234

Output

Reversed number: 4321

Time Complexity

The function processes each digit once. Therefore, the time complexity is O(n), where n is the number of digits.

C program to reverse integer using recursion, recursive integer reverse in C, recursion example in C programming, reverse number program in C, C programming recursion problems with solution

কোন মন্তব্য নেই:

একটি মন্তব্য পোস্ট করুন