Home »
C programs »
C recursion programs
C program to count digits of a number using recursion
In this C program, we are going to learn how to count total number of digits of a number using recursion?
Problem statement
Given an integer number and we have to count the digits using recursion using C program.
Counting digits of a number using recursion
In this program, we are reading an integer number and counting the total digits, here countDigits() is a recursion function which is taking number as an argument and returning the count after recursion process.
Example
Input number: 123
Output:
Total digits are: 3
C program to count digits of a number using recursion
/*C program to count digits using recursion.*/
#include <stdio.h>
// function to count digits
int countDigits(int num) {
static int count = 0;
if (num > 0) {
count++;
countDigits(num / 10);
} else {
return count;
}
}
int main() {
int number;
int count = 0;
printf("Enter a positive integer number: ");
scanf("%d", &number);
count = countDigits(number);
printf("Total digits in number %d is: %d\n", number, count);
return 0;
}
Output
Enter a positive integer number: 123
Total digits in number 123 is: 3
C Recursion Programs »